2010-12-09 23 views
1

Je viens de remplacer les contrôles Telerik dans un petit projet Web par des contrôles DevExpress, mais maintenant, malgré l'ajout d'un div inline comme conteneur, ces contrôles ne sont plus rendus en ligne. Qu'est-ce qui pourrait avoir causé cela, et que puis-je faire pour rétablir ces contrôles erronés?Conserver les contrôles DevExpress en ligne sur les formulaires Web ASP.NET

<div style="display: inline;"> 
    <label> 
     Department:</label> 
    <dx:ASPxComboBox ID="deptCombo" runat="server" AutoPostBack="false" ValueField="DeptId" TextField="DeptName" Width="250px" OnSelectedIndexChanged="deptCombo_SelectedIndexChanged"> 
    </dx:ASPxComboBox> 
    <label> 
     Production Date:</label> 
    <dx:ASPxDateEdit ID="productionDatePicker" runat="server" DisplayFormatString="{0:dd/MM/yyyy}" EditFormat="Custom" EditFormatString="dd/MM/yyyy" 
     ondatechanged="productionDatePicker_DateChanged"> 
    </dx:ASPxDateEdit> 
</div> 

Répondre

3

Nous avons expliqué comment aborder ce problème dans notre base de connaissances:

Possible ways of arranging DevExpress controls within a page

+0

Il est à la fois réconfortant que votre base de connaissances s'y adresse si bien et effrayant que cela soit nécessaire. Sûrement le rendu par défaut pour un bouton simple devrait être le rendu natif, non-table? – ProfK

1

Cela ressemble aux contrôles DevX ont certains CSS que vous aurez besoin de remplacer.

Pour commencer, je vais essayer d'ajouter le drapeau important pour le style:

<div style="display: inline !important;"> 

Si cela ne fonctionne pas, retourner à la RadControls. Ils sont de loin supérieurs :)

+0

peur important n'a pas fonctionné, et la conversion est sur l'insistance du client seulement. – ProfK

1

Presque tous les contrôles DevExpress sont rendus sous forme de tableaux. Le principal avantage de cette approche est que cette manière offre une bonne capacité de navigation entre les navigateurs, car lorsque des divs imbriqués sont utilisés, il peut être difficile de synchroniser leurs positions et leurs tailles pour tous les navigateurs. Cependant, l'utilisation de tables permet aux utilisateurs finaux de se débarrasser de ce problème.

[CSS] ajoutez cette ligne sur votre css

.DXControlsInline {display: inline-table;} 

[ASPx] Ajoutez CssClass = "DXControlsInline" sur les contrôles que vous voulez faire en ligne

<dx:ASPxLabel ID="ckArboviralDiseaseChikungunyaOtherSpecify" runat="server" CssClass="DXControlsInline" Text="Specify:"></dx:ASPxLabel> 
<dx:ASPxTextBox ID="tbArboviralDiseaseChikungunyaOther" CssClass="DXControlsInline" ClientInstanceName="tbArboviralDiseaseChikungunyaOther" runat="server" Width="350px"></dx:ASPxTextBox> 

Source: http://www.theedgesearch.com/2016/04/how-to-arrange-devexpress-controls.html