Ich versuche, ein benutzerdefiniertes Attribut in C# einzurichten, um festzulegen, ob eine Geschäftsobjekteigenschaft editierbar ist, wodurch ReadOnly ein Textfeld in XAML aktiviert oder deaktiviert wird. Da (dachte ich) IsEditable bereits in System.Windows.Controls umgesetzt wurde, dachte ich, das funktionieren würde:Ein benutzerdefiniertes Attribut zum Festlegen, ob ein Textfeld editierbar ist
[AttributeUsage(AttributeTargets.Property)]
public class EditableAttribute : Attribute
{
public EditableAttribute(bool isEditable)
{
this.ReadOnly = !isEditable;
}
public virtual bool ReadOnly { get; set; }
}
Nun, gehen Figur, es funktioniert nicht. Ich setze [Editierbar (falsch)] auf eine Zeichenkette in einem Objekt und es ist noch editierbar. Ich habe das Gefühl, dass ich nicht einmal in der Nähe bin. Jede Hilfe oder Vorschläge würden sehr geschätzt werden!
Ich bin mir bewusst, dass dies als ein Stil in XAML eingerichtet werden kann, aber für diesen Fall muss es im Business-Objekt sein.
Dank