2017-10-12 11 views
1

DataGridComboBoxColumnアイテムの選択をプログラムで設定するにはどうすればよいですか?
私のリストにデータを取り込みたいのですが、comboboxitemはリストから選択した項目を設定する必要があります。DataGridComboBoxColumnで選択範囲を設定するにはどうすればよいですか?

しかし、私はそれを達成する方法を見つけることはありません。選択は、 "進む" であるべきである。この例で

XAML:

<DataGrid ItemsSource="{Binding }" x:Name="dgSFD" AlternatingRowBackground="BlanchedAlmond" SelectionChanged="dgSFD_SelectionChanged" AutoGenerateColumns="False"> 
    <DataGrid.Columns> 
    <DataGridTextColumn Binding="{Binding Path=sID}" Header="Step ID"/> 
    <DataGridComboBoxColumn x:Name="cbServo" Header="Servo" SelectedItemBinding="{Binding Servo, Mode =TwoWay}" SelectedValuePath="sFunctionName ,Mode=TwoWay" DisplayMemberPath="sFunctionName"/> 
    </DataGrid> 

クラス

public class Step 
    { 
     public string sID { get; set; } 
     public Servo serServo { get; set; } 
    } 
public class Servo 
    { 
     public string sFunction { get; set; } 
     public string sServo { get; set; } 
    } 

C#

public static List<Step> listStep { get; set; } 
    public static List<Servo> listServo { get; set; } 



    public MainWindow() 
    { 
     InitializeComponent(); 
    } 




    public void loadList() 
    { 
     dgSFD.ItemsSource = listStep; 
     cbServo.ItemsSource = listServo; 
    } 


    public void testfill() 
    { 
     Servo newServo = new Servo(); 
     newServo.sFunctionName = "Forward"; 
     newServo.sServo = "Left"; 
     listServo.Add(newServo); 

     Step newStep = new Step(); 
     newStep.serServo = newServo; 
     newStep.sID = "1"; 


     listStep.Add(newStep); 
    } 

答えて

0

バインドSelectedItemBindingプロペStepオブジェクトのserServoプロパティへのアクセス:

<DataGridComboBoxColumn x:Name="cbServo" Header="Servo" SelectedItemBinding="{Binding serServo, Mode=TwoWay}" DisplayMemberPath="sFunction"/> 
関連する問題