2011-08-25 5 views
2

이 내 사용자 정의 텍스트 상자입니다 :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을 보여주고 싶습니다하지만 내 열거의 요소를 인식 할 수 없습니다.

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

을 다음 XAML에서 그 값에 바인딩 :

+1

XAML은 어디에 있습니까? – BoltClock

답변

1

당신은 Enum.GetName() 메소드를 사용하여 문자열로 enun 이름을 변환 할 수 있습니다.

찾고 계신가요? Enum.GetNames()를 사용하면 모든 유효한 이름 목록이 필요합니다.

관련 문제