J'ai deux combo et un bouton. remplissage combo enfant sur la base de la valeur de la clé combo parent. cliquez sur la valeur de combo parent va changer sur combo enfant, cliquez sur le bouton montrer ce combo texte sélectionné.Je peux le faire ci-dessous dans ma syntaxe.J'utilise la base de données du vent du nord.cascade ASPxComboBox problème
<div>
<dx:ASPxComboBox ID="ASPxComboBoxParent" runat="server" AutoPostBack="True" OnSelectedIndexChanged="ASPxComboBoxParent_SelectedIndexChanged"
TextField="ShipName" ValueField="OrderID" ValueType="System.Int32">
</dx:ASPxComboBox>
<dx:ASPxComboBox ID="ASPxComboBoxChild" runat="server" TextField="ProductID" ValueField="OrderID"
ValueType="System.Int32">
</dx:ASPxComboBox>
<dx:ASPxButton ID="ASPxButton1" runat="server" OnClick="ASPxButton1_Click" Text="ASPxButton">
</dx:ASPxButton>
<dx:ASPxLabel ID="ASPxLabelMessage" runat="server">
</dx:ASPxLabel>
</div>
C# syntaxe
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
NorthwindDataContext db=new NorthwindDataContext();
var r=from p in db.Orders
select p;
ASPxComboBoxParent.DataSource = r;
ASPxComboBoxParent.DataBind();
}
}
protected void ASPxComboBoxParent_SelectedIndexChanged(object sender, EventArgs e)
{
NorthwindDataContext db=new NorthwindDataContext();
int a= Convert.ToInt32(ASPxComboBoxParent.SelectedItem.Value);
var r = from p in db.Order_Details
where p.OrderID == a
select p;
ASPxComboBoxChild.DataSource = r;
ASPxComboBoxChild.DataBind();
ASPxComboBoxChild.SelectedIndex = 1;
}
protected void ASPxButton1_Click(object sender, EventArgs e)
{
ASPxLabelMessage.Text = "Parent is" + Convert.ToString(ASPxComboBoxParent.SelectedItem.Text) + "And child is" + Convert.ToString(ASPxComboBoxChild.SelectedItem.Text);
}
Après avoir cliqué sur le combo parent, remplissage combo enfant, mais cliquez sur le bouton toujours obtenir l'indice combo enfant = 0 événement valeur i change la valeur de combo enfant. Pourquoi ne pas modifier la valeur d'un événement de bouton? si avoir une requête plz me demander.thanks à l'avance.