开发者

Simple Dependency Property and UserControl issues in C#

开发者 https://www.devze.com 2023-02-27 04:36 出处:网络
My end goal is to expose the Text value of a TextBox that I have in a UserControl, from the UserControl\'s call in XAML.

My end goal is to expose the Text value of a TextBox that I have in a UserControl, from the UserControl's call in XAML.

<my:UserControl SetCustomText="Blah blah this is variable">

would render the UserControl with that TextBox's text filed in.

I've been working at it using various examples but I always end up with "The Property SetCustomText was not found in type Use开发者_如何转开发rControl"


Example of how you can do this:

<UserControl x:Class="Test.UserControls.MyUserControl1"
             xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
             xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
             xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
             xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
             Name="control">
    <Grid>
        <!-- Text is being bound to outward representative property -->
        <TextBox Text="{Binding MyTextProperty, ElementName=control}"/>
    </Grid>
</UserControl>
public partial class MyUserControl1 : UserControl
{
    // The dependency property which will be accessible on the UserControl
    public static readonly DependencyProperty MyTextPropertyProperty =
        DependencyProperty.Register("MyTextProperty", typeof(string), typeof(MyUserControl1), new UIPropertyMetadata(String.Empty));
    public string MyTextProperty
    {
        get { return (string)GetValue(MyTextPropertyProperty); }
        set { SetValue(MyTextPropertyProperty, value); }
    }

    public MyUserControl1()
    {
        InitializeComponent();
    }
}
<uc:MyUserControl1 MyTextProperty="Text goes here"/>
0

精彩评论

暂无评论...
验证码 换一张
取 消