问题描述
当你点击编辑按钮时,默认不显示的编辑形式
这是ASP:
--------------------------------------------- ------------------------
< dx:ASPxGridView ID =gvAtributos ClientInstanceName =gvAtributosEnableViewState =falserunat =serverTheme =MetropolisBlueWidth =100%OnDataBinding =gvAtributos_DataBindingAutoGenerateColumns =falseönRowUpdating=gvAtributos_RowUpdatingEnableCallBacks =false>
通过回调面板加载:
C#
--------------------------------------- -----------------------------
protected void CallbackAtributos_Callback(对象发送者,DevExpress.Web.ASPxClasses。 CallbackEventArgsBase e)
{
int parametro = Convert.ToInt32(e.Parameter);
Session [parametro] = parametro;
S. QLDS_Atributos.SelectParameters [Proyecto]。DefaultValue = Session [idProyecto]。ToString();
SQLDS_Atributos.SelectParameters [Objeto]。DefaultValue = gvObjetos.GetRowValues(parametro,pkObjeto ).ToString();
//gvAtributos.DataSource = SQLDS_Atributos;
gvAtributos.Caption = gvObjetos.GetRowValues(parametro,Alias)。ToString();
gvAtributos.SettingsDataSecurity.AllowEdit = true;
gvAtributos.SettingsBehavior.AllowSelectByRowClick = true;
gvAtributos.SettingsBehavior.AllowSelectSingleRowOnly = true;
gvAtributos.AutoGenerateColumns = false;
gvAtributos.DataBind();
}
protected void gvAtributos_DataBinding(object sender,EventArgs e)
{
(发件人为ASPxGridView).DataSource = GetDataSource();
AddColumns();
}
private SqlDataSource GetDataSource()
{
返回SQLDS_Atributos;
}
private void AddColumns()
{
gvAtributos.Columns.Clear();
DataView dw =(DataView)GetDataSource()。Select(DataSourceSelectArguments.Empty);
foreach(dw.Table.Columns中的DataColumn c)
AddTextColumn(c.ColumnName);
gvAtributos.KeyFieldName = dw.Table.Columns [0] .ColumnName;
clave = dw.Table.Columns [0] .ColumnName; //
gvAtributos.Columns [0]。 Visible = false;
AddCommandColumn();
}
private void AddTextColumn(string fieldName)
{
GridViewDataTextCo lumn c = new GridViewDataTextColumn();
c.FieldName = fieldName;
gvAtributos.Columns.Add(c);
}
private void AddCommandColumn()
{
SqlDataSource ds =(SqlDataSource)gvAtributos.DataSource;
bool showColumn =!(String.IsNullOrEmpty(ds.UpdateCommand)&& String.IsNullOrEmpty(ds.InsertCommand)&&
String.IsNullOrEmpty(ds.DeleteCommand));
if(showColumn)
{
GridViewCommandColumn c = new GridViewCommandColumn();
gvAtributos。 Columns.Add(c);
c.ShowEditButton = true;
c.ShowEditButton =!String.IsNullOrEmpty(ds.UpdateCommand);
c.ShowCancelButton = true;
c.ShowUpdateButton = true;
}
}
protected void gvAtributos_RowUpdating(object sender,DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{
//更新
}
the form of editing that brings default not displayed when you click on the edit button
This is ASP:
---------------------------------------------------------------------
<dx:ASPxGridView ID="gvAtributos" ClientInstanceName="gvAtributos" EnableViewState="false" runat="server" Theme="MetropolisBlue" Width="100%" OnDataBinding="gvAtributos_DataBinding" AutoGenerateColumns="false" önRowUpdating="gvAtributos_RowUpdating" EnableCallBacks="false">
loaded via a callback panel:
C#
--------------------------------------------------------------------
protected void CallbackAtributos_Callback(object sender, DevExpress.Web.ASPxClasses.CallbackEventArgsBase e)
{
int parametro = Convert.ToInt32(e.Parameter);
Session["parametro"] = parametro;
SQLDS_Atributos.SelectParameters["Proyecto"].DefaultValue = Session["idProyecto"].ToString();
SQLDS_Atributos.SelectParameters["Objeto"].DefaultValue = gvObjetos.GetRowValues(parametro, "pkObjeto").ToString();
//gvAtributos.DataSource = SQLDS_Atributos;
gvAtributos.Caption = gvObjetos.GetRowValues(parametro, "Alias").ToString();
gvAtributos.SettingsDataSecurity.AllowEdit = true;
gvAtributos.SettingsBehavior.AllowSelectByRowClick = true;
gvAtributos.SettingsBehavior.AllowSelectSingleRowOnly = true;
gvAtributos.AutoGenerateColumns = false;
gvAtributos.DataBind();
}
protected void gvAtributos_DataBinding(object sender, EventArgs e)
{
(sender as ASPxGridView).DataSource = GetDataSource();
AddColumns();
}
private SqlDataSource GetDataSource()
{
return SQLDS_Atributos;
}
private void AddColumns()
{
gvAtributos.Columns.Clear();
DataView dw = (DataView)GetDataSource().Select(DataSourceSelectArguments.Empty);
foreach (DataColumn c in dw.Table.Columns)
AddTextColumn(c.ColumnName);
gvAtributos.KeyFieldName = dw.Table.Columns[0].ColumnName;
clave = dw.Table.Columns[0].ColumnName;//
gvAtributos.Columns[0].Visible = false;
AddCommandColumn();
}
private void AddTextColumn(string fieldName)
{
GridViewDataTextColumn c = new GridViewDataTextColumn();
c.FieldName = fieldName;
gvAtributos.Columns.Add(c);
}
private void AddCommandColumn()
{
SqlDataSource ds = (SqlDataSource)gvAtributos.DataSource;
bool showColumn = !(String.IsNullOrEmpty(ds.UpdateCommand) && String.IsNullOrEmpty(ds.InsertCommand) &&
String.IsNullOrEmpty(ds.DeleteCommand));
if (showColumn)
{
GridViewCommandColumn c = new GridViewCommandColumn();
gvAtributos.Columns.Add(c);
c.ShowEditButton = true;
c.ShowEditButton = !String.IsNullOrEmpty(ds.UpdateCommand);
c.ShowCancelButton = true;
c.ShowUpdateButton = true;
}
}
protected void gvAtributos_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{
//updating
}
推荐答案
这篇关于AspxGridView默认的editform不显示的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!