2012-02-24 20 views
2

私は編集可能なwpfコンボボックスを持っています。最後の文字にスクロールするのではなく、その長さより長い文字を入力すると、テキストはコントロールから外れて表示されません。とにかくこれを修正するには?編集可能なコンボボックスのテキストスクロール

<ComboBox Margin="11,0,0,0" 
      Height="23"         
      Width="200" 
      IsEditable="True" 
      Text="{Binding Profile.Mat}" 
      ItemsSource="{Binding Statuses}" /> 

textscrolling

+0

これまでに解決されましたか?それは私のために働いていない。 – Ben

答えて

0

あなたは、コンボボックスのテンプレート内のテキストボックスのSelectionChangedイベントを処理することによって、これを達成することができます。コード内に次のコードを追加してください。

 public override void OnApplyTemplate() 
     { 
      base.OnApplyTemplate(); 
      if (comboBox.ApplyTemplate()) 
      { 
       TextBox editableTextBox = (TextBox)comboBox.Template.FindName("PART_EditableTextBox", comboBox); 
       editableTextBox.SelectionChanged += new RoutedEventHandler(editableTextBox_SelectionChanged); 
      } 
     } 

     void editableTextBox_SelectionChanged(object sender, RoutedEventArgs e) 
     { 
      TextBox textBox = sender as TextBox; 
      if (textBox != null) 
      { 
       textBox.ScrollToHome(); 
       e.Handled = true; 
      } 
     } 
+0

これがあなたの必要なものかどうか教えてください。 – gaurawerma

関連する問題