1

xamlファイルにリストビューとテキストボックスがあります。

意見:

<ListView Grid.Column="0" ItemsSource="{Binding I2CDeviceList}" SelectedItem="{Binding SelectedI2CDeviceList, Mode=TwoWay}" Name="I2cDeviceList" >
       <ListView.View>
              <GridView>
                    <GridViewColumn Header="I2C Device" Width="Auto" DisplayMemberBinding="{Binding I2CDevName}" />
                    <GridViewColumn Header="I2C Device Address" Width="Auto" DisplayMemberBinding="{Binding I2CDeviceAddress}" />
              </GridView>
       </ListView.View>
</ListView>

<TextBox Height="23" Grid.Column="1" Name="AddressI2C" Text="{Binding Path=AddressMessage, Mode=TwoWay}" />

モデルの表示:

//List View Property
public ObservableCollection<I2CModel> I2CDeviceList
    {
        get { return _I2CDeviceList; }
        set
        {
            _I2CDeviceList = value;
            NotifyPropertyChanged("I2CDeviceList");
        }
    }

    private I2CModel _selectedI2CDeviceList;
    public I2CModel SelectedI2CDeviceList
    {
        get { return _selectedI2CDeviceList; }
        set
        {
            _selectedI2CDeviceList = value;
            AddressMessage = _selectedI2CDeviceList.I2CDeviceAddress; //Displays Address in My textBox
            NotifyPropertyChanged("SelectedI2CDevSize");
        }
    }

// Property for textBox
private string _AddressMessage;
public string AddressMessage
    {
        get
        {
            return _AddressMessage;
        }
        set
        {
            _AddressMessage = value;
            NotifyPropertyChanged("AddressMessage");
        }
    }

私の要件は、

アプリケーションを起動するときに、リストビューの最初の項目をデフォルトで選択することはできますか?つまり、リストビューの最初の項目が「チップID」、「0x03」の場合、起動時にデフォルトで選択され、アドレス(0x03)もAddressMessageテキストボックスに表示される必要があります。

4

2 に答える 2

8

XAMLでをにSelectedIndex設定します。0

于 2012-10-09T12:25:24.840 に答える
6

ViewModelで、SelectedI2CDeviceListを起動時のデフォルト値に設定します。ViewModelコンストラクターを使用してSelectedItemを設定し、ウィンドウを起動したときにビューに選択した値が表示されるようにします。

于 2012-10-09T12:25:54.387 に答える