Telerik Grid 从下行列表中获取价值
Telerik Grid get value from downdownlist
我有一个带有以下代码的 Telerik 网格:
<telerik:GridDropDownColumn DataSourceID="UserSrc" ListTextField="FName" ListValueField="FName"
UniqueName="FName" SortExpression="FName" HeaderText="Assigned To"
DefaultInsertValue="N/A" DataField="FName" DropDownControlType="DropDownList"
AllowVirtualScrolling="true" ShowMoreResultsBox="true" ItemsPerRequest="10">
</telerik:GridDropDownColumn>
在我的代码中有以下内容:
protected void ItemCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "Update")
{
我的问题是如何从下拉列表中获取选定的值。
尝试一下,但您需要处于编辑模式,因为当此类行处于显示模式时,不会呈现 DropDown 控件。因此没有数据绑定,您无法获取其 DataValues。
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
GridEditableItem item = e.Item as GridEditableItem;
string MyValue = (item["FName"].Controls[0] as RadComboBox).SelectedItem.Text;
}
如果您未处于编辑模式,另一种方法是创建一个隐藏列并在其中保存下拉列的选定值,并从该列中检索值。
在第二种情况下,您可以像这样获取隐藏列的值:
protected void ItemCommand(object source, GridCommandEventArgs e)
{
if (e.CommandName == "Update")
{
GridDataItem item = (GridDataItem)e.Item;
string value = item["MyHiddenColumn"].Text;
}
}
您的隐藏列应如下所示:
<telerik:GridBoundColumn DataField="FName" UniqueName="MyHiddenColumn" HeaderText="ID" Visible="false">
</telerik:GridBoundColumn>
如果您使用 Visible="false" 您无法访问该列,请改用 display="false"。 http://www.telerik.com/forums/visible-vs-display-on-grid-column-definition
我有一个带有以下代码的 Telerik 网格:
<telerik:GridDropDownColumn DataSourceID="UserSrc" ListTextField="FName" ListValueField="FName"
UniqueName="FName" SortExpression="FName" HeaderText="Assigned To"
DefaultInsertValue="N/A" DataField="FName" DropDownControlType="DropDownList"
AllowVirtualScrolling="true" ShowMoreResultsBox="true" ItemsPerRequest="10">
</telerik:GridDropDownColumn>
在我的代码中有以下内容:
protected void ItemCommand(object sender, GridCommandEventArgs e)
{
if (e.CommandName == "Update")
{
我的问题是如何从下拉列表中获取选定的值。
尝试一下,但您需要处于编辑模式,因为当此类行处于显示模式时,不会呈现 DropDown 控件。因此没有数据绑定,您无法获取其 DataValues。
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
GridEditableItem item = e.Item as GridEditableItem;
string MyValue = (item["FName"].Controls[0] as RadComboBox).SelectedItem.Text;
}
如果您未处于编辑模式,另一种方法是创建一个隐藏列并在其中保存下拉列的选定值,并从该列中检索值。
在第二种情况下,您可以像这样获取隐藏列的值:
protected void ItemCommand(object source, GridCommandEventArgs e)
{
if (e.CommandName == "Update")
{
GridDataItem item = (GridDataItem)e.Item;
string value = item["MyHiddenColumn"].Text;
}
}
您的隐藏列应如下所示:
<telerik:GridBoundColumn DataField="FName" UniqueName="MyHiddenColumn" HeaderText="ID" Visible="false">
</telerik:GridBoundColumn>
如果您使用 Visible="false" 您无法访问该列,请改用 display="false"。 http://www.telerik.com/forums/visible-vs-display-on-grid-column-definition