Asp.net 不支持AspxGridView指定的方法。问题
下面是我的.aspx aspxGridview语法Asp.net 不支持AspxGridView指定的方法。问题,asp.net,linq-to-objects,devexpress,Asp.net,Linq To Objects,Devexpress,下面是我的.aspx aspxGridview语法 <dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False" KeyFieldName="intProductCode" onrowinserted="ASPxGridView1_RowInserted"> <Columns> <dx:G
<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False"
KeyFieldName="intProductCode" onrowinserted="ASPxGridView1_RowInserted">
<Columns>
<dx:GridViewCommandColumn VisibleIndex="0">
<EditButton Visible="True">
</EditButton>
<NewButton Visible="True">
</NewButton>
<DeleteButton Visible="True">
</DeleteButton>
</dx:GridViewCommandColumn>
<dx:GridViewDataTextColumn Caption="intProductCode" FieldName="intProductCode"
VisibleIndex="1">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="strProductName" FieldName="strProductName"
VisibleIndex="2">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="SKU" FieldName="SKU" VisibleIndex="3">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="PACK" FieldName="PACK" VisibleIndex="4">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="intQtyPerCase" FieldName="intQtyPerCase"
VisibleIndex="5">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="mnyCasePrice" FieldName="mnyCasePrice"
VisibleIndex="6">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="intTBQtyPerCase"
FieldName="intTBQtyPerCase" VisibleIndex="7">
</dx:GridViewDataTextColumn>
<dx:GridViewDataCheckColumn Caption="bIsActive" FieldName="bIsActive"
VisibleIndex="8">
</dx:GridViewDataCheckColumn>
<dx:GridViewDataTextColumn Caption="intSortingOrder"
FieldName="intSortingOrder" VisibleIndex="9">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="strProductAccCode"
FieldName="strProductAccCode" VisibleIndex="10">
</dx:GridViewDataTextColumn>
</Columns>
</dx:ASPxGridView>
CREATE TABLE [dbo].[tblProductInfo](
[intProductCode] [int] NOT NULL,
[strProductName] [varchar](100) NULL,
[SKU] [varchar](50) NULL,
[PACK] [varchar](50) NULL,
[intQtyPerCase] [int] NULL,
[mnyCasePrice] [money] NULL,
[intTBQtyPerCase] [int] NULL,
[bIsActive] [bit] NULL,
[intSortingOrder] [int] NULL,
[strProductAccCode] [varchar](max) NULL,
CONSTRAINT [PK_tblProductInfo] PRIMARY KEY CLUSTERED
(
[intProductCode] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
我的SQL语法
<dx:ASPxGridView ID="ASPxGridView1" runat="server" AutoGenerateColumns="False"
KeyFieldName="intProductCode" onrowinserted="ASPxGridView1_RowInserted">
<Columns>
<dx:GridViewCommandColumn VisibleIndex="0">
<EditButton Visible="True">
</EditButton>
<NewButton Visible="True">
</NewButton>
<DeleteButton Visible="True">
</DeleteButton>
</dx:GridViewCommandColumn>
<dx:GridViewDataTextColumn Caption="intProductCode" FieldName="intProductCode"
VisibleIndex="1">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="strProductName" FieldName="strProductName"
VisibleIndex="2">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="SKU" FieldName="SKU" VisibleIndex="3">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="PACK" FieldName="PACK" VisibleIndex="4">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="intQtyPerCase" FieldName="intQtyPerCase"
VisibleIndex="5">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="mnyCasePrice" FieldName="mnyCasePrice"
VisibleIndex="6">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="intTBQtyPerCase"
FieldName="intTBQtyPerCase" VisibleIndex="7">
</dx:GridViewDataTextColumn>
<dx:GridViewDataCheckColumn Caption="bIsActive" FieldName="bIsActive"
VisibleIndex="8">
</dx:GridViewDataCheckColumn>
<dx:GridViewDataTextColumn Caption="intSortingOrder"
FieldName="intSortingOrder" VisibleIndex="9">
</dx:GridViewDataTextColumn>
<dx:GridViewDataTextColumn Caption="strProductAccCode"
FieldName="strProductAccCode" VisibleIndex="10">
</dx:GridViewDataTextColumn>
</Columns>
</dx:ASPxGridView>
CREATE TABLE [dbo].[tblProductInfo](
[intProductCode] [int] NOT NULL,
[strProductName] [varchar](100) NULL,
[SKU] [varchar](50) NULL,
[PACK] [varchar](50) NULL,
[intQtyPerCase] [int] NULL,
[mnyCasePrice] [money] NULL,
[intTBQtyPerCase] [int] NULL,
[bIsActive] [bit] NULL,
[intSortingOrder] [int] NULL,
[strProductAccCode] [varchar](max) NULL,
CONSTRAINT [PK_tblProductInfo] PRIMARY KEY CLUSTERED
(
[intProductCode] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]
) ON [PRIMARY]
当我要插入时,显示错误消息不支持指定的方法。
如何解决此问题。您好,您只需确保要插入或更新。在插入方法中,需要写入 e.cancle=true
您好,您只需确保要插入或更新。在插入方法中,需要写入 e.cancle=true
当ASPxGridView试图调用其基础数据源的Update(Insert,Delete)命令,但未指定此命令时,将显示“指定的方法不受支持”错误消息。如果无法定义此命令,请处理行更新(行插入、行删除)事件,手动更新数据源(e.NewValues字典包含输入值),最后将e.Cancel参数设置为true并调用ASPxGridView.CancelEdit方法。不支持指定的方法当ASPxGridView试图调用其基础数据源的Update(Insert,Delete)命令,但未指定此命令时,将显示错误消息。如果无法定义此命令,请处理行更新(行插入、行删除)事件,手动更新数据源(e.NewValues字典包含输入值),最后,将e.Cancel参数设置为true并调用ASPxGridView.CancelEdit方法。这包含解决方案要执行的操作。如何执行
这包含解决方案要做什么。如何做
如果您不打算使用数据源命令,则可以使用网格行更新事件并设置e.Cancel=true,然后调用Grid.CancelEdit()方法(如上面DevExpress团队所述。下面是一个示例:
void grid_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{
// Your update logic here.
e.Cancel = true;
this.editableGrid.CancelEdit();
}
如果您不打算使用DataSource命令,则可以使用Grid RowUpdate事件并设置e.Cancel=true,然后调用Grid.CancelEdit()方法(如上面DevExpress团队所述。下面是一个示例:
void grid_RowUpdating(object sender, DevExpress.Web.Data.ASPxDataUpdatingEventArgs e)
{
// Your update logic here.
e.Cancel = true;
this.editableGrid.CancelEdit();
}
请发送一些语法。我想插入而不是更新,而不是删除。如果我在rowInserting方法上设置e.Cancle=true,则rowInserted方法不起作用。实际上,E257示例显示了如何使用这些事件。为什么需要使用rowInserted事件?在您的情况下,不应该引发它,所有代码都应该在t中实现RowInserting事件处理程序。如果您使用此建议,您将得到一个脏网格,数据库已更改,但网格未显示新记录否!网格将显示更新的数据。如果ASPxGridView使用自己的逻辑更新数据库中的数据,则RowInserted事件仅由ASPxGridView引发。因为一切都是在RowInsert中完成的ing event和e.Cancel设置为true,网格不会调用其机制,因此不会引发事件。因此,请确保,建议的方法绝对正确。我自己多次使用过它。最后,E257示例也没有使用ROWSERTED事件,并且所有操作都正常。请发送一些语法。我想继续ert大于更新,大于删除。如果我在rowInserting方法上设置e.Cancle=true,则rowInserted方法不起作用。实际上,E257示例显示了如何使用这些事件。为什么需要使用rowInserted事件?在您的情况下,不应引发该事件,所有代码都应在rowInserting事件处理程序中实现。如果s建议您使用脏网格结束,数据库已更改,但网格未显示新记录否!网格将显示更新的数据。只有当ASPxGridView使用其自己的逻辑更新数据库中的数据时,RowInserted事件才会由ASPxGridView引发。由于所有操作都是在RowInserting事件中完成的,并且e.Cancel设置为true,因此grid不调用其机制,因此不会引发事件。因此,请确保,建议的方法绝对正确。我自己多次使用过它。最后,E257示例也没有使用RowInserted事件,并且所有操作都正常。