C# RadGrid中的组合框
在插入/更新网格时,我很难在RadGrid中添加组合框。因此,当我的网格进入编辑模式时,我希望显示一个组合框 这是我的aspx页面:C# RadGrid中的组合框,c#,asp.net,telerik,radgrid,C#,Asp.net,Telerik,Radgrid,在插入/更新网格时,我很难在RadGrid中添加组合框。因此,当我的网格进入编辑模式时,我希望显示一个组合框 这是我的aspx页面: <telerik:radgrid id="radManageMembers" runat="server" cssclass="GridView" width="96%" autogeneratecolumns="true" onUpdateCommand="radManageMembers_UpdateCommand" Skin="WebBlue"
<telerik:radgrid id="radManageMembers" runat="server" cssclass="GridView" width="96%"
autogeneratecolumns="true" onUpdateCommand="radManageMembers_UpdateCommand" Skin="WebBlue"
onNeedDataSource="radManageMembers_NeedDataSource" OnDeleteCommand="radManageMembers_DeleteCommand"
OnInsertCommand="radManageMembers_InsertCommand" OnItemCreated="radManageMembers_ItemCreated" OnItemCommand="radManageMembers_ItemCommand">
<MasterTableView EditMode="InPlace" AutoGenerateColumns="false"
TableLayout="Fixed" DataKeyNames="MemberID" CommandItemDisplay="TopAndBottom" Skin="WebBlue">
<Columns>
<telerik:GridBoundColumn DataField="MemberID" Display="false">
</telerik:GridBoundColumn>
<telerik:GridButtonColumn UniqueName="DeleteColumn" CommandName="Delete" ButtonType="PushButton" Text="Delete">
</telerik:GridButtonColumn>
<telerik:GridBoundColumn DataField="MemberName" UniqueName="MemberName" HeaderText="MemberName">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="FirstName" UniqueName="FirstName" HeaderText="FirstName">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="LastName" UniqueName="LastName" HeaderText="LastName" >
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Title" UniqueName="Title" HeaderText="Title">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="AdditionalNumber" UniqueName="AdditionalNumber" HeaderText="AdditionalNumber">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Telephone" UniqueName="Telephone" HeaderText="Telephone">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="IDNumber" UniqueName="IDNumber" HeaderText="IDNumber">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="BusinessName" UniqueName="BusinessName" HeaderText="BusinessName">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="Email" UniqueName="Email" HeaderText="Email">
</telerik:GridBoundColumn>
<telerik:GridBoundColumn DataField="LanguageCode" UniqueName="LanguageCode" HeaderText="LanguageCode">
</telerik:GridBoundColumn>
<telerik:GridEditCommandColumn ButtonType="PushButton" UniqueName="EditCommandColumn">
<HeaderStyle Width="85px"></HeaderStyle>
</telerik:GridEditCommandColumn>
</Columns>
<EditFormSettings CaptionFormatString="Edit details for employee with ID {0}" CaptionDataField="EmployeeID">
<FormTableItemStyle Width="100%" Height="29px"></FormTableItemStyle>
<FormTableStyle GridLines="None" CellSpacing="0" CellPadding="2"></FormTableStyle>
<FormStyle Width="100%"></FormStyle>
<EditColumn ButtonType="ImageButton">
</EditColumn>
</EditFormSettings>
</MasterTableView>
<ClientSettings>
<ClientEvents OnRowDblClick="RowDblClick"></ClientEvents>
</ClientSettings>
我看了一下这里的例子-
但是这个组合框并没有从数据库中填充不同的值,在组合框中似乎存在重复项,我发现这些重复项毫无意义
我很乐意看看是否有其他方法来解决这个问题,或者是解决这个问题的正确方法
编辑
ComboBox的值来自数据库,所有值都是唯一的。在代码中,您没有添加ComboBox。因此,请在EditItemTemplate中添加combobox,并尝试使用以下代码访问combobox
protected void grid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
GridEditableItem item = (GridEditableItem)e.Item;
RadComboBox combo = ((RadComboBox)item.FindControl("RadComboBoxValore"));
combo.DataSource = SqlDataSource2;
combo.DataValueField = "EmployeeID";
combo.DataTextField = "EmployeeID";
combo.DataBind();
}
}
或者添加GridDropDownColumn你看过Telerik网站吗?这里有很多很棒的例子。我很惊讶你没有看到Gridview中的ComboBox示例,他们已经在他们的网站上发布了这些示例。我已经看过了,还有一些非常酷的示例。但是我没有遇到一个适合这个要求的例子,除非我是隔墙看的。组合框在哪里??绑定组合框的代码在哪里?
protected void grid1_ItemDataBound(object sender, Telerik.Web.UI.GridItemEventArgs e)
{
if (e.Item is GridEditableItem && e.Item.IsInEditMode)
{
GridEditableItem item = (GridEditableItem)e.Item;
RadComboBox combo = ((RadComboBox)item.FindControl("RadComboBoxValore"));
combo.DataSource = SqlDataSource2;
combo.DataValueField = "EmployeeID";
combo.DataTextField = "EmployeeID";
combo.DataBind();
}
}