使UserControl中的文本框变为只读
本文关键字:只读 文本 UserControl | 更新日期: 2023-09-27 18:05:28
我在UserControl中有两个文本框。如何根据条件将它们更改为readOnly = true/false ?
在我的内容页中,我有以下代码:
<%@ Register TagPrefix="uc1" TagName="item" Src="~/User_Controls/itemDetails.ascx" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent_1" runat="server">
<uc1:item id="ItemList" runat="server"></uc1:item><br />
</asp:Content>
背后的代码:
protected void Page_Load(object sender, EventArgs e)
{
if (//Some Conditions)
{
//turn ItemList.txtItemName = enable read Only
}
if (//Some other Conditions)
{
//turn ItemList.txtItemPrice = disable read Only
}
}
在itemdetails . asx .cs中:
protected void Page_Load(object sender, EventArgs e)
{
}
public string itemName
{
get { return txtItemName.Text; }
set { txtItemName.Text = value; }
}
public string itemPrice
{
get { return txtItemPrice.Text; }
set { txtItemPrice.Text = value; }
}
//and get...set... for other controls
创建用户控件ItemDetails.ascx
的属性。并将该属性分配给文本框enable属性。
public bool EnabledtxtItemName { get; set; }
protected void Page_Load(object sender, EventArgs e)
{
txtItemName.Enabled = EnabledtxtItemName;
}
现在您可以从添加了用户控件的相应页面访问该属性。
Web页面protected void Page_Load(object sender, EventArgs e)
{
ItemList.EnabledtxtItemName = false;
}