如何解决根据ASP.net中的值使字段只读:C#,ASP.Net
每个回答我问题的人都非常有帮助,我即将完成此应用程序。我现在的挑战是基于登录使3个字段为只读。
我有以下代码可以完全满足我的需要,并将当前登录的用户分配给文本字段。我要做的是,如果登录用户不等于特定值,则设置一些其他文本字段(只读)。例如,如果submitted_by_email_username不等于administrator1@samplecompany.com,则将作为文本框的文本字段(Salary_in)设为只读。这些天,我读的代码比写的要多,因此,如果这是一个简单的请求,我深表歉意。我想根据后面的COde中的逻辑将三个字段设为只读。
protected void Page_PreInit(object sender,EventArgs e)
{
if (submitted_by_email_username != null)
{
_ = Context.User.Identity.Name;
if (User.Identity.IsAuthenticated)
submitted_by_email_username.Text = User.Identity.Name;
}
}
解决方法
首先,您不需要Page_PreInit
的99.9%的时间在Web表单中编写代码。即使使用动态控件,您也只需要Page_Load
。
但是您可以使用Enabled
属性将TextBox设为只读。
protected void Page_Load(object sender,EventArgs e)
{
if (Request.IsAuthenticated)
{
submitted_by_email_username.Enabled = false;
submitted_by_email_username.Text = User.Identity.Name;
}
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。