WPF自定义用户控件-“无法识别或访问成员X”

本文关键字:识别 访问 成员 用户 自定义 控件 WPF | 更新日期: 2023-09-27 18:11:16

我有这个自定义控件,但是不能从我的主XAML中访问它的成员

<UserControl x:Class="FireflyMmwDiagnostics.Controls.RegisterTextBox"
         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" 
         mc:Ignorable="d" 
         d:DesignHeight="300" d:DesignWidth="300">
<Grid>
    <Label Name="LabelRegisterTitle"/>
</Grid>

public partial class RegisterTextBox : UserControl
{
    public RegisterTextBox()
    {
        InitializeComponent();
    }
    public string RegisterTitle
    {
        get { return this.LabelRegisterTitle.Content.ToString(); }
        set { this.LabelRegisterTitle.Content = value; }
    }

这就是我在主XAML中得到的错误,说明"成员RegisterTitle不可识别或不可访问":

<Controls:RegisterTextBox RegisterTitle="This Is A Test"/>

我看了几个YouTube视频,他们就是这么做的,出于某种原因,这对他们很有效。请建议什么可能是这里的问题。谢谢你!

WPF自定义用户控件-“无法识别或访问成员X”

您可能需要重新构建以使其看到RegisterTitle

如果这不起作用,请确保您已经在XAML中定义了Controls在您的项目中,否则它肯定无法看到它!

例如:

<Window xmlns:Controls="clr-namespace:FireflyMmwDiagnostics.Controls.RegisterTextBox">

尝试将您的属性声明为Dependency Properties

这应该有帮助,因为它有示例代码-为什么我在我的WPF用户控件上看到"成员未被识别或不可访问"错误?

你的代码工作得很好,我不使用依赖属性,所以有几件事要尝试:

  • 在你的控制下,确保你以</UserControl>
  • 结束
  • 更改Controls:RegisterTextBox使用小写的'c',所以controls:RegisterTextBox