将Umbraco“siteName”文本字符串添加到我的.net用户控件中

时间:2012-10-04 06:10:01

标签: user-controls umbraco asp.net-controls

我有一个文本字符串属性类型,用于在页面标题中显示“siteName”:

<title><umbraco:Item runat="server" field="siteName" recursive="true" /></title>

我的.net用户控件中需要哪些代码才能添加“siteName”?

<asp:Label ID="siteName" runat="server" Text="siteName should go here!"></asp:Label>

有人可以帮忙吗?

我已将此添加到Umbraco论坛并建议如下,但不确定如何将其包含在我的.ascx文件中:

dynamic node = new umbraco.MacroEngines.DynamicNode(umbraco.NodeFactory.Node.GetCurrent()); siteName.Text = node._siteName; 

2 个答案:

答案 0 :(得分:1)

您可以在usercontrol中使用它

//var node = new Node(123); // Get node by Id, good if you have information on a certain page

var node = Node.GetCurrent(); // Get the current node
var nodeProperty = node.GetProperty("siteName").Value;
siteName.Text = nodeProperty;

答案 1 :(得分:0)

您希望在usercontrol中拥有一个公共属性,然后当您通过宏将usercontrol公开给umbraco时,该属性也将成为宏的参数。

当您在模板中引用宏时,您可以浏览页面属性。

你可能想看看Umbraco电视:

http://umbraco.com/help-and-support/video-tutorials/introduction-to-umbraco/developer-introduction/macro-parameters.aspx

旧的(但大多数是准确的)pdf:

http://umbraco.com/media/42a0202c-b0ba-4f84-bcf1-64dfd5230322-usingcontrolswithumbraco.pdf