我创建了一个用户控件,希望可以在多个站点中使用。我遇到的问题是这些网站可能都有不同的配色方案。我想知道如何为控件制作模板,然后基于开发人员的网站,他们将传递一个参数,指示他们需要的颜色方案,并且用户控件将适当更新。我是.NET的新手,所以如果这是一个微不足道的问题,请耐心等待。我尝试在线研究,但大多数例子要么更复杂,要么只是改变了面板的颜色,而不是改变css样式。
控件(.ascx)如下所示:
<%@ Control Language="C#" AutoEventWireup="true" CodeFile="EmployeeSearch.ascx.cs" Inherits="Controls_EmployeeSearch" ClassName="EmployeeSearch" %>
<div id="divUserEntry" runat="server">
<center>
<br />
<!-- This is the title for the employee search-->
<div id="employeeTitle" class="LookupTitle">
<center>Select Employee</center>
</div>
<!-- Div for the actual search elements -->
<div id="searchPeople" class="searchPeople">
<div id="addedPerson" class="addedPerson">
</div>
<asp:TextBox ID="txtUserEntry" class="searchTextBox" runat="server" Text="Enter Name or ID" onFocus="this.value = ''" CssClass="searchTextStyle"></asp:TextBox>
<asp:HiddenField ID="currentSearch" name="currentSearch" Value="notANormalValue" />
<div id="searchResults" class="searchResults">
Search for employee to manage.
</div>
</div>
<br />
<asp:Button ID="btnSubmitEmployee" runat="server" Text="Submit" />
</center>
</div>
然后我这样注册:
<%@ Register TagPrefix="uc" TagName="EmployeeSearch" Src="~/Controls/EmployeeSearch.ascx" %>
然后用它来调用它:
<uc:EmployeeSearch ID="searchContent" runat="server" />
我知道我可以在uc调用中添加一个属性,但我不知道如何让div正确更新。有没有人有建议?提前谢谢!
答案 0 :(得分:0)
usercontrols从aspx或site.master页面继承css,所以你可以做的就是在每个css中添加
#divUserEntry{color:#fff;}
或设置一个css类,然后设置你的div
<div id="divUserEntry" runat="server" class="usercontrol">
但仍然在每个css中他们必须添加
.usercontrol{color:#fff;}