【发布时间】:2013-08-23 07:36:34
【问题描述】:
如何防止我的网格在单击编辑链接按钮时调整大小?我只需要修复我的gridview..
请注意,当您单击编辑链接按钮时,会出现 2 个按钮:1 个用于更新,1 个用于取消,而在其他单元格中,文本框似乎会更新值,这就是我的网格正在调整大小的原因。我该如何解决这个问题?
这是我的 ASP 代码:
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" onrowdatabound="GridView1_RowDataBound"
AutoGenerateColumns="False" Width="604px"
DataKeyNames="id,firstname,lastname,adress,email,telephone,birthday">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox id="Select" runat="server" OnCheckedChanged="CheckedChanged" AutoPostBack="false"/>
<asp:LinkButton ID="idedit" CommandName="Edit" CausesValidation="true" runat="server"
ToolTip="Edit" Text="Edit"/>
<asp:LinkButton ID="selectID" CommandName="Select" CausesValidation="true" runat="server"
ToolTip="Select" Text="Select" />
</ItemTemplate>
<EditItemTemplate>
<asp:LinkButton ID="idupdate" CommandName="Update" runat="server" CausesValidation="false" Text="Update"
ToolTip="Update" OnClientClick="javascript:if(!confirm('Are you sure do you want to update this?')){return false;}" />
<asp:LinkButton ID="idcancel" runat="server" CommandName="Cancel" CausesValidation="false"
Text="Cancel" ToolTip="Cancel"/>
</EditItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="firstname">
<EditItemTemplate>
<asp:TextBox ID="fnmaetxt" runat="server" Text='<%# Bind("firstname") %>'></asp:TextBox>
<%--<asp:RequiredFieldValidator ID="EmailRequired" runat="server" ControlToValidate="fnmaetxt" Text="The first name field is required!"/>--%>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblfirstname" runat="server" Text='<%# Bind("firstname") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="lastname">
<EditItemTemplate>
<asp:TextBox ID="lnametxt" runat="server" Text='<%# Bind("lastname") %>'></asp:TextBox>
<%--<asp:RequiredFieldValidator ID="RequiredFieldValidator2" ControlToValidate="lnametxt" Text="The last name field is required!"
runat="server" />--%>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lbllastname" runat="server" Text='<%# Bind("lastname") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="adress">
<EditItemTemplate>
<asp:TextBox ID="adresstxt" runat="server" Text='<%# Bind("adress") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lbladress" runat="server" Text='<%# Bind("adress") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="email">
<EditItemTemplate>
<asp:TextBox ID="emtailtxt" runat="server" Text='<%# Bind("email") %>'></asp:TextBox>
<%--<asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="emtailtxt" Text="Not a Valid Email Address" SetFocusOnError="True" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*" />--%>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblemail" runat="server" Text='<%# Bind("email") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="telephone">
<EditItemTemplate>
<asp:TextBox ID="phonetxt" runat="server" Text='<%# Bind("telephone") %>'></asp:TextBox>
<%--<asp:RegularExpressionValidator ID="RegularExpressionValidator2" runat="server" ControlToValidate="phonetxt" Text="Not a Valid phone number " SetFocusOnError="True" ValidationExpression="\d{8}"/>--%>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lbltelephone" runat="server" Text='<%# Bind("telephone") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="birthday">
<EditItemTemplate>
<asp:TextBox ID="birthdaytxt" runat="server" Text='<%# Bind("birthday") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblbirthday" runat="server" Text='<%# Bind("birthday") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
这是我在编辑事件中的代码:
Protected Sub GridView1_RowEditing(sender As Object, e As System.Web.UI.WebControls.GridViewEditEventArgs) Handles GridView1.RowEditing
GridView1.EditIndex = e.NewEditIndex
GridView1.DataSource = x.selectProfile
GridView1.DataBind()
End Sub
任何帮助将不胜感激
提前谢谢你
【问题讨论】:
-
这个链接好像是你要找的:forums.asp.net/t/1115211.aspx/1
-
这个链接对我没有帮助,因为我的问题有点不同
-
我不确定这就是为什么我将其发布为评论,而不是作为答案。能否请您解释一下您的目标是什么?
-
当我单击网格中的编辑链接按钮时,此链接将被其他两个链接按钮替换:更新和取消,网格变为可编辑,这就是为什么当我单击时我的网格正在调整大小编辑链接按钮,我需要防止这个调整大小的问题......你明白我的意思了吗?
-
这是我最初的理解。在 winforms 中,您可以选择根本不允许用户调整 DataGridView 的大小。从我在这个链接中读到的内容(虽然没有测试过),我了解到这与 ASP.NET 中的 GridView 等效,即锁定数据网格,使用户根本无法影响其尺寸;这不是你想要的吗?