簡體   English   中英

如何在XAML中顯示我的枚舉?

[英]How can I show my enum in XAML?

這是我的自定義文本框:

public class TextBoxInputNumbers : TextBox
{
    Regex regex;
    public enum DatatypesInput
    {
        Integer, Decimals
    }

    public TextBoxInputNumbers()
    {
        DatatypeInput = DatatypesInput.Integer;
    }

    public DatatypesInput DatatypeInput
    {
        set
        {
            switch (value)
            {
                case DatatypesInput.Integer:
                    regex = new Regex("[^0-9.-]+");
                    break;
                case DatatypesInput.Decimals:
                    regex = new Regex("[^0-9-]+");
                    break;
            }
        }
    }

    protected override void OnPreviewTextInput(System.Windows.Input.TextCompositionEventArgs e)
    {
        e.Handled = regex.IsMatch(e.Text);
    }
}

我想在XAML中顯示屬性DatatypeInput,但它們無法識別我的枚舉的任何元素。

您可以使用Enum.GetName()方法將enun名稱轉換為字符串:

    get
    {
        return Enum.GetName(typeof(DatatypesInput), value);
    }

然后綁定到您的XAML中的值。

那是您要找的東西嗎? 使用Enum.GetNames()是需要所有有效名稱的列表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM