UserProfile.ascx
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="UserProfile.ascx.cs" Inherits="UserControls_UserProfile" %>
<asp:DetailsView ID="DVProfile" runat="server" Height="50px" Width="213px" AutoGenerateRows="False">
<HeaderTemplate>
<asp:Label ID="LabelTitle" runat="server" Text="My Profile"></asp:Label>
</HeaderTemplate>
<Fields>
<asp:TemplateField HeaderText="Email:" SortExpression="f_email">
<EditItemTemplate>
<asp:TextBox ID="Email" runat="server" Text='<%# Bind("f_email") %>' ValidationGroup="ProfileGroup"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFV_mail" runat="server" ControlToValidate="Email"
Display="Dynamic" ErrorMessage="Email requires" SetFocusonError="True" ValidationGroup="ProfileGroup"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="REV_email" runat="server" ControlToValidate="Email"
Display="Dynamic" ErrorMessage="Email format illegal" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"
ValidationGroup="ProfileGroup" SetFocusonError="True"></asp:RegularExpressionValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("f_email") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Security question:" SortExpression="f_question">
<EditItemTemplate>
<asp:TextBox ID="question" runat="server" Text='<%# Bind("f_question") %>' MaxLength="100"></asp:TextBox>
<br />
<asp:RequiredFieldValidator ID="RFV_question" runat="server" ControlToValidate="question"
Display="Dynamic" ErrorMessage="question requires" SetFocusonError="True"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="REV_question" runat="server" ErrorMessage="question format illegal" SetFocusonError="True"
ValidationGroup="ProfileGroup" ControlToValidate="question" Display="Dynamic" ValidationExpression="^[0-9a-zA-Z]{6,50}$"></asp:RegularExpressionValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("f_question") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Your answer:" SortExpression="f_answer">
<EditItemTemplate>
<asp:TextBox ID="Answer" runat="server" Text='<%# Bind("f_answer") %>' MaxLength="200" ValidationGroup="ProfileGroup"></asp:TextBox>
<br />
<asp:RequiredFieldValidator ID="RFV_answer" runat="server" ControlToValidate="Answer"
Display="Dynamic" ErrorMessage="answer requires" SetFocusonError="True" ValidationGroup="ProfileGroup"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="REV_answer" runat="server" ControlToValidate="Answer"
Display="Dynamic" ErrorMessage="answer format illegal" SetFocusonError="True" ValidationExpression="^[0-9a-zA-Z]{6,50}$"
ValidationGroup="ProfileGroup"></asp:RegularExpressionValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("f_answer") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address:" SortExpression="f_address">
<EditItemTemplate>
<asp:TextBox ID="Address" runat="server" Text='<%# Bind("f_address") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# Bind("f_address") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="ZipCode:" SortExpression="f_zipcode">
<EditItemTemplate>
<asp:TextBox ID="Zipcode" runat="server" Text='<%# Bind("f_zipcode") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# Bind("f_zipcode") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Phone:" SortExpression="f_phone">
<EditItemTemplate>
<asp:TextBox ID="Phone" runat="server" Text='<%# Bind("f_phone") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label6" runat="server" Text='<%# Bind("f_phone") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Fields>
<FooterTemplate>
<asp:Button ID="btnEdit" runat="server" Text="Edit" onClick="btnEdit_Click" />
<asp:Button ID="btnUpdate" runat="server" Text="Update" Visible="False" onClick="btnUpdate_Click" />
</FooterTemplate>
</asp:DetailsView>.cs:
protected void btnEdit_Click(object sender, EventArgs e)
{
Button btnEdit = (Button)DVProfile.FindControl("btnEdit");
btnEdit.Visible = false;
Button btnUpdate = (Button)DVProfile.FindControl("btnUpdate");
btnUpdate.Visible = true;
DVProfile.ChangeMode(DetailsViewMode.Edit);
}
我想实现的是edit按钮隐藏,update按钮可视,detailsview控件转为编辑模式都在点击edit按钮后完成.
调试的时候,edit隐藏,update按钮可视都可以,但detailsview没有转为编辑模式,需要再按一下update按钮才转为编辑模式?不用autogenerateeditbutton,是因为装的是中文版的vs2005,但是界面需要是英文的.所以...
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="UserProfile.ascx.cs" Inherits="UserControls_UserProfile" %>
<asp:DetailsView ID="DVProfile" runat="server" Height="50px" Width="213px" AutoGenerateRows="False">
<HeaderTemplate>
<asp:Label ID="LabelTitle" runat="server" Text="My Profile"></asp:Label>
</HeaderTemplate>
<Fields>
<asp:TemplateField HeaderText="Email:" SortExpression="f_email">
<EditItemTemplate>
<asp:TextBox ID="Email" runat="server" Text='<%# Bind("f_email") %>' ValidationGroup="ProfileGroup"></asp:TextBox>
<asp:RequiredFieldValidator ID="RFV_mail" runat="server" ControlToValidate="Email"
Display="Dynamic" ErrorMessage="Email requires" SetFocusonError="True" ValidationGroup="ProfileGroup"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="REV_email" runat="server" ControlToValidate="Email"
Display="Dynamic" ErrorMessage="Email format illegal" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"
ValidationGroup="ProfileGroup" SetFocusonError="True"></asp:RegularExpressionValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label1" runat="server" Text='<%# Bind("f_email") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Security question:" SortExpression="f_question">
<EditItemTemplate>
<asp:TextBox ID="question" runat="server" Text='<%# Bind("f_question") %>' MaxLength="100"></asp:TextBox>
<br />
<asp:RequiredFieldValidator ID="RFV_question" runat="server" ControlToValidate="question"
Display="Dynamic" ErrorMessage="question requires" SetFocusonError="True"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="REV_question" runat="server" ErrorMessage="question format illegal" SetFocusonError="True"
ValidationGroup="ProfileGroup" ControlToValidate="question" Display="Dynamic" ValidationExpression="^[0-9a-zA-Z]{6,50}$"></asp:RegularExpressionValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label2" runat="server" Text='<%# Bind("f_question") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Your answer:" SortExpression="f_answer">
<EditItemTemplate>
<asp:TextBox ID="Answer" runat="server" Text='<%# Bind("f_answer") %>' MaxLength="200" ValidationGroup="ProfileGroup"></asp:TextBox>
<br />
<asp:RequiredFieldValidator ID="RFV_answer" runat="server" ControlToValidate="Answer"
Display="Dynamic" ErrorMessage="answer requires" SetFocusonError="True" ValidationGroup="ProfileGroup"></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="REV_answer" runat="server" ControlToValidate="Answer"
Display="Dynamic" ErrorMessage="answer format illegal" SetFocusonError="True" ValidationExpression="^[0-9a-zA-Z]{6,50}$"
ValidationGroup="ProfileGroup"></asp:RegularExpressionValidator>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label3" runat="server" Text='<%# Bind("f_answer") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Address:" SortExpression="f_address">
<EditItemTemplate>
<asp:TextBox ID="Address" runat="server" Text='<%# Bind("f_address") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label4" runat="server" Text='<%# Bind("f_address") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="ZipCode:" SortExpression="f_zipcode">
<EditItemTemplate>
<asp:TextBox ID="Zipcode" runat="server" Text='<%# Bind("f_zipcode") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label5" runat="server" Text='<%# Bind("f_zipcode") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="Phone:" SortExpression="f_phone">
<EditItemTemplate>
<asp:TextBox ID="Phone" runat="server" Text='<%# Bind("f_phone") %>'></asp:TextBox>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="Label6" runat="server" Text='<%# Bind("f_phone") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
</Fields>
<FooterTemplate>
<asp:Button ID="btnEdit" runat="server" Text="Edit" onClick="btnEdit_Click" />
<asp:Button ID="btnUpdate" runat="server" Text="Update" Visible="False" onClick="btnUpdate_Click" />
</FooterTemplate>
</asp:DetailsView>.cs:
protected void btnEdit_Click(object sender, EventArgs e)
{
Button btnEdit = (Button)DVProfile.FindControl("btnEdit");
btnEdit.Visible = false;
Button btnUpdate = (Button)DVProfile.FindControl("btnUpdate");
btnUpdate.Visible = true;
DVProfile.ChangeMode(DetailsViewMode.Edit);
}
我想实现的是edit按钮隐藏,update按钮可视,detailsview控件转为编辑模式都在点击edit按钮后完成.
调试的时候,edit隐藏,update按钮可视都可以,但detailsview没有转为编辑模式,需要再按一下update按钮才转为编辑模式?不用autogenerateeditbutton,是因为装的是中文版的vs2005,但是界面需要是英文的.所以...
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货