代码之家  ›  专栏  ›  技术社区  ›  Asim Sajjad

组合框的选定文本

  •  1
  • Asim Sajjad  · 技术社区  · 14 年前

    如何在组合框的SelectionChanged事件中获取所选文本 这是我的密码

    <ComboBox x:Name="cboRecordType" Margin="2,0" Height="23" Grid.Column="1" VerticalAlignment="Center" SelectionChanged="ComboBox_SelectionChanged">
                <ComboBoxItem Content="Weight"/>
                <ComboBoxItem Content="Height"/>
                <ComboBoxItem Content="Blood Pressure"/>
                <ComboBoxItem Content="Blood Gulocose"/>
            </ComboBox>
    

    cborecordtype.text为空,没有取消选定的文本,如何获取该文本

    4 回复  |  直到 14 年前
        1
  •  1
  •   dthorpe    14 年前

    SelectionChanged 事件处理程序,您可以查看 cboRecordType.SelectedItem 属性,或者您可以查看 AddedItems 性质 SelectionChangedEventArgs 传递到事件处理程序。

    当选择一个项目时,该项目将添加到 附加项 事件参数的数组属性。(多选择案例中有多个项目)。当取消选择某个项时,它将添加到 RemovedItems 事件参数的数组属性。

        2
  •  0
  •   vodkhang    14 年前

    在代码隐藏中,您需要像下面的代码那样处理该事件: ComboBox SelectionChanged 代码块

    /// <summary>
    
    /// Handles the comboBox SelectionChanged event
    
    /// </summary>
    
    /// <param name="sender"></param>
    
    /// <param name="e"></param>
    
    private void ComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
    
    {
    
    
    
    }
    
        3
  •  0
  •   Amsakanna    14 年前

    您可以尝试绑定方法,而不是处理事件。为此,需要创建这样的属性并将其绑定到组合框的选定项

    private String _selectedItem;
    public String SelectedItem
    {
        get { return _selectedItem; }
        set
        {
            _selectedItem = value;
            OnPropertyChanged(new PropertyChangedEventArgs("SelectedItem"));
        }
    }
    
    <ComboBox SelectedItem="{Binding SelectedItem}" />
    

    旁注:您也可以填写一些集合并将其绑定到组合框,而不是硬编码。

        4
  •  0
  •   Levelbit    14 年前

    最好尝试使用命令和命令参数作为MVVM实现的一部分。