繁体   English   中英

在将值添加到MainPage之前,如何为UserControl元素分配值?

How can I assign values to UserControl elements before I add it to my MainPage?

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

在我的Windows Store应用程序中,我有一个带有“添加”按钮的MainPage和一个UserControl,其中包含一个TextBlock和一个Rectangle。 当我单击MainPage上的“添加”按钮时,我想创建一个新的UserControl实例并将一个字符串值分配给TextBlock。 最后,我想将UserControl实例添加到MainPage上的容器元素。

这是我的ActionUserControl现在的样子:

<Grid x:Name="ActionGrid">
    <TextBlock x:Name="ActionText" Grid.Row="0" Text="Name Goes Here" />
</Grid>

和代码隐藏

public sealed partial class ActionUserControl : UserControl
{
        public string ActionName { get; set; }

        public ActionUserControl()
        {
            this.InitializeComponent();
        }
}

这就是我在MainPage AddButton_Click事件中所做的

private void AddButton_Click(object sender, PointerRoutedEventArgs e)
{
    // ActionCount holds number of active Actions
    ActionCount++;

    // Create an instance of the user control, and assign name
    ActionUserControl auc = new ActionUserControl();
    auc.ActionName = "Action " + ActionCount;

    // Add the user control to the container
    this.ActionContainer.Children.Add(auc);

    // Move the add button to the bottom of the container for consistency
    int childrenCount = this.ActionContainer.Children.Count;
    this.ActionContainer.Children.Move((uint)childrenCount - 1, (uint)childrenCount - 2);
}

我曾尝试在UserControl构造函数和PageLoad事件上分配ActionText.Text = ActionName,但是它们都为null。 我应该绑定ActionText.Text值,而不是尝试从代码隐藏中设置它吗?

1 个回复

你可以...

  1. 使您的ActionName成为依赖项属性并绑定到它。
  2. 在ActionName属性设置器中的UserControls上更改文本块。

还考虑:为什么要在代码中创建用户控件? 您可以只将一个操作(作为字符串)添加到列表中,并使用DataTemplate将其显示在ListBox(或其他ItemsControl)中。

1 UWP:将值从UserControl传递到MainPage

我创建了一个UserControl,其中所有操作都在UserControl.xaml.cs中完成,我希望将UserControl中的特定属性(称为“值”)传递给在MainPage中创建的TextBlock。 为了测试对属性的访问,我已经在UserControl中创建了一个TextBlock,并 ...

2 ASP.NET:将无值属性添加到UserControl

在ASP.NET中,您可以通过以下方式向用户控件添加自定义HTML标记属性: ...但是如何添加没有值的属性 ? 例如,(并且我并不是说这就是我所需要的)W3C规范仅需要checked存在checked属性即可将其视为已选中(而不是checked='true'东西)。 我正在考 ...

7 将值添加到数组中的元素之一

我有一个包含 n 个元素的列表,我正在尝试创建一个新的nxn数组,其中所有行都是我之前列表的元素(例如,如果我有一个列表 u=[a,b],那么数组是 y=[u,u]=[[a,b],[a,b]]) 并且对于索引 i=1,2 的所有值,...我想要所有元素 y[i][ i] 与附加值 h 相加(即,如果 ...

8 MySQL将值添加到SET元素

我试图借助php表单在数据库中插入新行。 首先,我有上面的MySQL表。 然后,使用以下代码,我将获得所有内容的字段值 请注意 ,这是多选形式。(一个人可能说一种以上的语言) 然后,使用php获取表中每个元素的值,但是对于我最感兴趣的那个,我执行以下操作: 我 ...

2016-01-20 22:45:19 2 468   php/ mysql
9 将值添加到类型的ArrayList元素

这就是我所拥有的。 我正在尝试将名称值添加到indexStruct类型的ArrayList中,并且不知道如何执行此操作。 Name是一个String,任何帮助都会很棒。 谢谢! ...

10 将值标签添加到html元素

图片以回答 网页的外观 我需要在上面的HTML输入元素中添加value =,我该怎么做? 对于我的一生,我无法弄清楚。 编辑:我需要这样做,因为我需要填写一个不包含value =的网页上的文本框。 但是,如果我右键单击它并添加属性value =,则可以通过我的程序更改文本。 ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM