C# 如何在ASCX文件中动态设置背景色?
我有一个名为AegHero的ASCX文件,其中有一个Web部件的标记。我还有一个BackgroundColor属性,它保存一个类名,该类名对应于具有特定背景颜色的类 我认为我的问题是我没有正确定义代码中的值。我使用下拉菜单让用户选择颜色: 这是我的AegHero.ascx:C# 如何在ASCX文件中动态设置背景色?,c#,asp.net,kentico,ascx,C#,Asp.net,Kentico,Ascx,我有一个名为AegHero的ASCX文件,其中有一个Web部件的标记。我还有一个BackgroundColor属性,它保存一个类名,该类名对应于具有特定背景颜色的类 我认为我的问题是我没有正确定义代码中的值。我使用下拉菜单让用户选择颜色: 这是我的AegHero.ascx: <asp:PlaceHolder runat="server"> <div id="mainHeroContainer" class="fullWi
<asp:PlaceHolder runat="server">
<div id="mainHeroContainer" class="fullWidth-hero-container <%= BackgroundColor %>">
<div class="fullWidth-hero-container-inner">
<h2 class="fillWidth-hero-title"><%=Title %></h2>
<p class="fillWidth-hero-subtilte"><%=SubTitle %></p>
<% if (ShowButton)
{%>
<a class="btn button" href="<%= ButtonUrl %>"><%= ButtonLabel %></a>
<%} %>
</div>
</div>
</asp:PlaceHolder>
以下是我的css类:
.灰色背景{
背景:858e99;
}
lochmara先生背景{
背景:0077c2;
}
.秘鲁背景{
背景:002147;
}
我试图根据我收到的十六进制值设置;然而,当我查看我的chrome inspector时,类没有改变。如何正确地从backgroundColor属性获取值并将其设置为默认值
铬检验员:
您可能想看看如何开始。我这样说是因为您的公共属性没有从UI中的Web部件检索存储的值。下面是一个标准属性示例:
public string BackgroundColor
{
get
{
return DataHelper.GetNotEmpty(GetValue("BackgroundColor"), string.Empty);
}
set
{
SetValue("BackgroundColor", value);
}
}
GetValueBackgroundColor方法获取您在Kentico UI的webpart属性上创建的列的字符串名称,并检索存储在数据库中的给定页面/模板的值。这允许编辑器从前端Kentico UI选择或输入颜色,并允许您在代码中使用它
阅读更多关于文档的内容,它会让你朝着正确的方向前进。你可能想看看如何开始。我这样说是因为您的公共属性没有从UI中的Web部件检索存储的值。下面是一个标准属性示例:
public string BackgroundColor
{
get
{
return DataHelper.GetNotEmpty(GetValue("BackgroundColor"), string.Empty);
}
set
{
SetValue("BackgroundColor", value);
}
}
GetValueBackgroundColor方法获取您在Kentico UI的webpart属性上创建的列的字符串名称,并检索存储在数据库中的给定页面/模板的值。这允许编辑器从前端Kentico UI选择或输入颜色,并允许您在代码中使用它
阅读更多关于文档的内容,它会让您朝着正确的方向前进。我添加了您的代码,但这也不能解决我的问题?你还有其他建议吗?我使用下拉菜单让用户选择一种颜色。你能解释一下什么不起作用吗?它是否返回了一个值?如果是,值是多少?它破坏了代码。该值为Null如果您的解决方案有效,我将属性的名称拼写错误,这就是为什么我得到了一个错误。非常感谢。我添加了你的代码,但这也不能解决我的问题?你还有其他建议吗?我使用下拉菜单让用户选择一种颜色。你能解释一下什么不起作用吗?它是否返回了一个值?如果是,值是多少?它破坏了代码。该值为Null如果您的解决方案有效,我将属性的名称拼写错误,这就是为什么我得到了一个错误。非常感谢。