2010-12-01 2 views
0

Je crée un contrôle utilisateur Web dans asp.net en utilisant C# dans lequel je peux sélectionner une date dans un calendrier et l'afficher dans une zone de texte. Lorsque je sélectionne une date dans le calendrier, elle doit être affichée dans la zone de texte. maintenant j'ai besoin de définir mes propres propriétés par lesquelles je peux sélectionner des modèles datetime dans le fichier de code cs. par exempleDéfinir les propriétés et créer des événements pour un contrôle utilisateur

usercontrol1.dd-mm-yyyy. 

ceci est un exemple. maintenant je veux tous les modèles datetime de "en-us". Quand j'utilise cette commande usercontrol dans une autre page je veux définir l'une des propriétés (patterns datetime) à ce contrôle. Aidez-moi, s'il vous plaît!!!

J'ai essayé ce codage, mais aucune utilité ... plz examiner et me donner une solution

public partial class ChampDate: System.Web.UI.UserControl {

string dateformat; 

    public string Dateformat 
    { 
     get { return dateformat;} 

     set { dateformat = value; } 

    } 


    protected void Page_Load(object sender, EventArgs e) 
    { 

     if(!Page.IsPostBack) 
     { 
     PageLoad(); 
     lnlbtnChangeDate.Visible = false; 
     ddlDateFormat.Visible = false; 
     Calendar.Visible = false; 
     } 
     lblError.Visible = false; 

    } 
    public void PageLoad() 
    { 


     if (txtBoxDate.Text != "") 
     { 
      Calendar.Visible = false; 
     } 
     CultureInfo ci = new CultureInfo("fr-fr"); 
     string[] format = ci.DateTimeFormat.GetAllDateTimePatterns(); 
     foreach (string i in format) 
     { 
      ddlDateFormat.Items.Add(i); 
     } 

    } 




    protected void lnkbtnPickDate_Click(object sender, EventArgs e) 
    { 
     Calendar.Visible = true; 
     lnlbtnChangeDate.Visible = true; 
     ddlDateFormat.Visible = false; 

    } 



    public void Calendar_SelectionChanged1(object sender, EventArgs e) 
    { 
     txtBoxDate.Text = Calendar.SelectedDate.ToShortDateString(); 

    } 

    protected void ddlDateFormat_SelectedIndexChanged(object sender, EventArgs e) 
    { 

     txtBoxDate.Text = Calendar.SelectedDate.ToString(ddlDateFormat.SelectedValue.ToString()); 
    } 


    protected void lnlbtnChangeDate_Click(object sender, EventArgs e) 
    { 
     Calendar.Visible = false; 
     if (txtBoxDate.Text == "") 
     { 
      lblError.Visible = true; 
     } 
     else 
     { 
      lblError.Visible = false; 
      lnlbtnChangeDate.Visible = true; 
      ddlDateFormat.Visible = true; 
     } 
    } 

    protected void lnkbtnClear_Click(object sender, EventArgs e) 
    { 
     txtBoxDate.Text = ""; 
     Calendar.Visible = false; 
     lnlbtnChangeDate.Visible = false; 
     ddlDateFormat.Visible = false; 
     lblError.Visible = false; 
    } 

i dit que je veulent définir des propriétés pour mon contrôle utilisateur et créer des événements pour que .... plz help me

+0

Je pense que vous demandez quelque chose que beaucoup de gens peuvent répondre, mais je crains que ce que vous avez écrit ne soit pas très clair. Vous pouvez essayer de clarifier un peu plus votre question. –

+0

merci mais je ne sais pas pour expliquer plus que cela peut-on dire s'il vous plaît où son tuck – jsk

+0

j'avais changé ma question. merci pour la critique mr.claudio – jsk

Répondre

0

Je ne sais pas je bien la question est pas très clair, mais de toute façon:

Vous pouvez simplement créer des propriétés pour vous contrôles utilisateur et attribuer énumérations les

public enum My_UserControl_DateFormats 
    { 
     YYYYMMDD = 1, 
     YYYYMMDDHH = 2, 
     YYYYMMDDHHmmSS = 3 
    } 

Et dans le code setter de vos propriétés gérer la logique d'attribuer le format de date (par exemple) en fonction de la valeur ENUM (en utilisant le commutateur/cas)

C'est une parmi de nombreuses possibilités.

+0

j'ai ajouté mon codage s'il vous plaît l'examiner et plz m'aider – jsk

Questions connexes