J'ai fait quelques recherches mais rien n'est vraiment utile dans mon cas. Je souhaite hériter de DataControlField (System.Web.UI.WebControls) pour pouvoir gérer deux contrôles d'étiquette, puis je souhaite colorier les deux étiquettes pour obtenir une forme de mise en forme conditionnelle. partie de mise en forme mais comment puis-je personnaliser cette classe?Personnalisé DataControlField Classe
Où dans ma classe devrais-je définir les deux contrôles d'étiquette? Comment remplacer la méthode CreateField? P.: Je sais que je peux accomplir cela, en XHTML Markup, mais j'ai tellement de colonnes qu'il ne serait pas approprié d'inclure ces marquages dans le balisage de la page. Par conséquent, je le fais dans la page CodeBehind.
EDIT:
public class MyField : DataControlField
{
public MyField()
{
}
protected override DataControlField CreateField()
{
// What to put here?
}
protected override void CopyProperties(DataControlField newField)
{
((CalendarField)newField).DataField = this.DataField;
((CalendarField)newField).DataFormatString = this.DataFormatString;
((CalendarField)newField).ReadOnly = this.ReadOnly;
base.CopyProperties(newField);
}
public override void InitializeCell(DataControlFieldCell cell, DataControlCellType cellType, DataControlRowState rowState, int rowIndex)
{
// Call the base method
base.InitializeCell(cell, cellType, rowState, rowIndex);
// Initialize the contents of the cell quitting if it is a header/footer
if (cellType == DataControlCellType.DataCell)
InitializeDataCell(cell, rowState);
}
protected virtual void InitializeDataCell(DataControlFieldCell cell, DataControlRowState rowState)
{
}
}
un peu de code ... – Saar
@Saar J'ai inclus un code, mais ont besoin de savoir comment mettre en œuvre les méthodes de base de la bonne façon. –