从组合框的选定索引更改源中获取其他值

时间:2010-01-25 14:57:11

标签: c# .net asp.net visual-studio telerik

我相信它与我使用的是什么类型的组合框无关,但我使用的是Rad Combo Box。我的数据源不仅选择数据文本字段和值字段的数据,还选择其他几列。我想获取所选项的那些列的值。如何在selectedindexchanged上完成此操作?

 <table width="100%">
                <tr>
                    <td align="center" ><strong>Please select a policy :</strong>
                        <telerik:RadComboBox ID="RadComboPolicy" runat="server" Width="400px"  OnSelectedIndexChanged="RadComboPolicy_SelectedIndexChanged"  DataSourceID="SqlDataSource2" AppendDataBoundItems="true" DataTextField="Pname" AutoPostBack="true" DataValueField="PID">
                        <Items>
                            <telerik:RadComboBoxItem runat="server" Selected="true" Value="-1" Text="Select a Policy to Begin" />
                        </Items>
                        </telerik:RadComboBox>
                        <asp:SqlDataSource ID="SqlDataSource2" runat="server" 
                            ConnectionString="<%$ConnectionString %>" SelectCommand="select p.pid,p.pname,p.startdate,p.enddate from insurance..policy p">
                        </asp:SqlDataSource>
                    </td>
                </tr>
            </table>



 protected void RadComboPolicy_SelectedIndexChanged(object sender, RadComboBoxSelectedIndexChangedEventArgs e)
{
    //Here i want to get the startdate and enddate
}

2 个答案:

答案 0 :(得分:1)

由于您的代码现在正好,当您将startdateenddate绑定到组合框时,基本上会丢弃pidpname数据。您需要将此数据存储在隐藏字段中(如statichippo所述),或者使用服务器端的pid将信息从数据库中提取出来。

无论如何,现在看来,这些数据在回发期间的任何地方都无法获得。

答案 1 :(得分:0)

您需要将数据放在某处。这可能是一个隐藏字段(如显示= false的文字)。然后你可以得到RadComboItem的行并找到隐藏的字段并解析那些日期。