web-dev-qa-db-fra.com

Comment ajouter des attributs personnalisés aux contrôles ASP.NET

J'ai une case à cocher de contrôle ASP.NET:

<asp:CheckBox ID="myChck" runat="server" Value="myCustomValue" />

Est-il possible d'ajouter cet attribut Value personnalisé à partir de code-behind et d'obtenir respectivement la valeur de Value

Quelque chose comme (psuedocode):

myCkck.Value = "blq blq";
string chckValue = myChck.Value;

Comment puis-je faire ceci?

19
Anton Belev

C'est parfaitement possible:

myCkck.Attributes.Add("Value", "blq blq");

string chckValue = myChck.Attributes["Value"].ToString();
24
melancia

Vous pouvez créer une nouvelle classe qui hérite de la classe CheckBox (ou de toute autre classe de contrôle d'ailleurs) et ajouter toutes les autres propriétés dont vous avez besoin à la classe dérivée. De cette façon, vous obtiendrez plus ou moins une CheckBox étendue.

public class ExtendedCheckBox : CheckBox
{
    public string Value
    {
        get;
        set;
    }

    public ExtendedCheckBox : base()
    {

    }
}
3
KnaperKrisp