0

ラドコンボボックスを使用しています。ページのドロップダウンリストの選択された値を取得し、それを別のページに渡し、2ページ目のドロップダウンで選択された同じ値を取得したい。

しかし、値を取得できません。ここでインデックスを取得するだけです。

私は試した

           ddl2.SelectedIndex
           ddl2.SelectedItem.Text
           ddl2.SelectedValue

値を送信するため。ただし、値のインデックスのみを渡しています。また、2 ページ目で、この値をドロップ ダウン リストに割り当てる必要があります。だから、私は使用した

           ddl2.SelectedIndex = Convert.ToInt32((Request.QueryString["No2"]));
           ddl3.SelectedIndex = Convert.ToInt32((Request.QueryString["No3"]));

しかし、これも適切な値を選択できません。助言がありますか?

これで、クエリ文字列を使用して 2 番目のページに値を正常に渡すことができます。しかし、クエリ文字列から ddl リストに値を割り当てている間、毎回 null 値を取得しています

これが私が試したコードの一部です。以下の両方の行を試しましたが、それぞれのケースで値がRHSに来ています..しかし、LHSではNullとして来ています。

          ddl2.SelectedItem.Value Request.QueryString["No2"].ToString();
          ddl2.FindItemByValue(Request.QueryString["No2"].ToString()).Selected = true;
4

1 に答える 1

3

これを行う方法の例を次に示します。

Page1.aspx:

<telerik:RadComboBox ID="RadComboBox1" runat="server">
    <Items>
        <telerik:RadComboBoxItem Value="A" Text="A" />
        <telerik:RadComboBoxItem Value="B" Text="B" />
    </Items>
</telerik:RadComboBox>
<asp:Button ID="btnNextPage" runat="server" Text="Next Page" OnClick="btnNextPage_Click" />

Page1.aspx.cs:

protected void btnNextPage_Click(object sender, EventArgs e)
{
    Response.Redirect("~/Page2.aspx?value=" + RadComboBox1.SelectedValue);
}

Page2.aspx:

<telerik:RadComboBox ID="RadComboBox2" runat="server">
    <Items>
        <telerik:RadComboBoxItem Value="A" Text="A" />
        <telerik:RadComboBoxItem Value="B" Text="B" />
    </Items>
</telerik:RadComboBox>

Page2.aspx.cs:

protected void Page_Load(object sender, EventArgs e)
{
    if (!IsPostBack)
    {
        RadComboBox2.SelectedValue = Request.QueryString["value"];
    }
}

これを実現する他の方法には、個別のページの代わりにマルチビューコントロールを使用するか、postbackurlプロパティを使用して(クエリ文字列を使用する代わりに)別のページにポストバックすることが含まれます。

于 2013-01-15T04:45:41.587 に答える