我有一个aspxGridView控件来列出一些记录。我正在使用一个组合框来填充一些数据,这与aspxgridview不同。
protected void ASPxGridView1_CellEditorInitialize(object sender, ASPxGridViewEditorEventArgs e)
{
if (e.Column.FieldName == "LnkHotelID")
{
ASPxComboBox cmb = e.Editor as ASPxComboBox;
cmb.DataSource = DsHtel;
cmb.ValueField = "HotelID";
cmb.ValueType = typeof(Int32);
cmb.TextField = "HotelName";
cmb.DataBindItems();
}
}我不想看到"LnkHotelID“所以我想把它藏起来。但是当我隐藏这一列时,我不能使用上面的函数。我还想看到"HotelName“列,但不想更新它。
所以我有两个问题:
1)如何在运行时访问aspxcombobox ? 2)如何显示我的HotelName但不能编辑它们?
发布于 2013-07-19 03:48:27
将ASPxComboBox.ClientEnabled属性设置为False:
ASPxComboBox cmb = e.Editor as ASPxComboBox;
cmb.ClientEnabled = false;发布于 2013-07-18 21:33:17
当你用visible=false隐藏列时,它不会在超文本标记语言中呈现,所以你不能使用上面的函数。因此,使用带有display: none样式属性而不是可见的false
<style>
.hiddencolumn {display:none;}
</style>
<asp:GridView ID="GridViewHotel" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField DataField="LnkHotelID" ItemStyle-CssClass="hidden"
HeaderStyle-CssClass="hiddencolumn" />
</Columns>
</asp:GridView>现在你可以使用你的代码了。
https://stackoverflow.com/questions/17722567
复制相似问题