Ich habe ein benutzerdefiniertes Benutzersteuerelement mit einer öffentlichen Eigenschaft, die ich gerne in XAML einstellen könnte. Hier ist es unten.Warum sehe ich in meinem WPF-Benutzersteuerelement einen Fehler "Mitglied wird nicht erkannt oder ist nicht erreichbar"?
TestControl.xaml
<UserControl x:Class="Scale.Controls.TestControl"
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">
TestControl.xaml.cs
using System.Windows.Controls;
namespace MyProject.Controls
{
public partial class TestControl : UserControl
{
public string TestMe { get; set; }
public TestControl()
{
InitializeComponent();
}
}
}
Dann in meiner MainWindow.xaml Datei, ich versuche, dies zu umfassen:
<controls:TestControl TestMe="asdf" />
Doch obwohl Visual Studio autocompletes die testme Eigenschaft, ich sehe die Dinge dann mit einem verschnörkelten unterstrichen, dass „Das Element‚Test Me sagt‘nicht erkannt wird oder nicht zugänglich ist“, wie unten zu sehen.
Ich hätte geschworen ich so etwas wie dies schon in anderen Projekten gemacht haben. Wie kann ich über XAML auf öffentliche Eigenschaften zugreifen (d. H. Festlegen)?
Ein Beispiel dafür, wie dies zu tun, wäre toll – SoaperGEM
Hoffen, dass es Ihnen hilft –
Ich glaube, Ihr Projekt sollte als Service-Leistung aufzubauen. Sie benötigen nur eine Abhängigkeitseigenschaft, wenn die Eigenschaft das Ziel einer Bindung sein soll. Ich habe gerade ein ähnliches Szenario getestet und es baut wie in Ihrer Frage gezeigt auf. Nicht sehr nützlich ... aber baut. Nach dem Aufbau von VS hört auf mein Gerät zu beschweren. – Sam