2013-06-12 68 views
0

我有一个组合框,我绑定可用端口名称:刷新端口Namein组合框 - WPF

<ObjectDataProvider ObjectType="{x:Type ports:SerialPort}" MethodName="GetPortNames" x:Key="portNames"/> 

      <ComboBox Grid.Row="0" Grid.Column="1" Height="21" ItemsSource="{Binding Source={StaticResource portNames}}" SelectedItem="{Binding Source={x:Static ConnectionMngr.Instance}, Path=PortSettings.PortName, Mode=TwoWay}" VerticalContentAlignment="Center"/> 

如果我打开窗口中的COM连接的时候,然后我看到在下拉列表端口名称值。

如果我在COM未连接的情况下打开窗口,我没有看到组合框中的值,但我希望当我连接COM时,该值将在那里。

如何在COM连接时引起组合框查看值?

感谢

回答

0

在使用您绑定到实例的类,执行INotifyPropertyChanged和你想要更新

public string PortName 
{ 
    get { return __portName;} 
    set 
     { 
      if_portName == value) return; 
      _portName = value; 
      RaisePropertyChanged("PortName"); 
     } 
    } 
+0

谢谢,已经实施的财产提出。问题是portname属性没有设置为任何值。我想刷新组合框中的项目。组合框中的项目是操作系统中的可用端口。如果没有端口可用,现在我插入一个USB,操作系统中有一个新的COM。我希望组合框将自行刷新以将新的COM作为项目。谢谢 – user1902346