从自定义控件引用子项
Posted
技术标签:
【中文标题】从自定义控件引用子项【英文标题】:Referencing a children from a custom control 【发布时间】:2019-01-22 15:33:21 【问题描述】:我正在通过在ContentView
中组合一些元素来创建自定义控件。 ContentView
有另一个嵌套的ContentView
,称为MainBody
。
当我使用控件时,我将如何访问和设置MainBody
。这就是我想要实现的目标:
...
<controls.ControlName>
<controls.ControlName.MainBody>
<ContentView>
...
</ContentView>
</controls.ControlName.MainBody>
</controls.ControlName>
...
【问题讨论】:
【参考方案1】:其实这是我想出来的:
public static readonly BindableProperty MainContentProperty = BindableProperty.Create("MainContent", typeof(View), typeof(DropShadowPanel), default(View));
public View MainContent
get return (View)GetValue(MainContentProperty);
set SetValue(MainContentProperty, value); OnPropertyChanged();
public DropShadowPanel ()
InitializeComponent ();
PropertyChanged += DropShadowPanel_PropertyChanged;
private void DropShadowPanel_PropertyChanged(object sender, PropertyChangedEventArgs e)
if(e.PropertyName == MainContentProperty.PropertyName)
mainContent.Content = MainContent;
而且它有效。
【讨论】:
以上是关于从自定义控件引用子项的主要内容,如果未能解决你的问题,请参考以下文章
如何从自定义用户控件 WPF、C# 中的枚举自定义属性中获取值?