プログラマー、 実行時にItemsSourceバインディングを変更する必要があります。 私のDataGridでは、タイプ "Akte"のアイテムを見たいと思っています。 のViewModelでこのコードは動作します:タイプバインディングの依存関係プロパティへのバインド
#region DependencyProperty AktenDataGrid
public static readonly DependencyProperty AktenDataGridProperty =
DependencyProperty.Register("AktenDataGrid", typeof(DataGrid), typeof(UebersichtVM));
public DataGrid AktenDataGrid
{
get { return (DataGrid)GetValue(AktenDataGridProperty); }
set
{
SetValue(AktenDataGridProperty, value);
OnPropertyChanged();
}
}
#endregion DependencyProperty AktenDataGrid
private void OnSammelakteChangedCommand(object parameter)
{
Binding aktenBinding;
if (null == AktenDataGrid || null == parameter)
{
aktenBinding = new Binding("AngemeldeterBenutzer.AktenBenutzer");
}
else
{
aktenBinding = new Binding("SelectedItem.Sammelakte.SammelakteAkten");
aktenBinding.ElementName = "sammelaktenDataGrid";
}
AktenDataGrid.SetBinding(DataGrid.ItemsSourceProperty, aktenBinding);
}
コマンドは、私のsammelaktenDataGridでの選択を変更することで実行されます。 私のUserControlのコードビハインドで、影響を受けるDataGridでプロパティAktenDataGridを初期化する必要があります。
私はViewModelを変更する必要があります。それは、TypeBindingのDependencyProperty AktenDataGridBindingを提供し、ItemSourceをこのプロパティにバインドしたいと考えています。 試しましたが、うまくいきません。 私を助けることができますか?
私は今、コピー/貼り付けをMarkusHütterさんのコメント@に人々の量を想像することができGoogle翻訳... :) - FYI、それは英語に(ない非常によく)翻訳:「ヒント:私は希望常にプログラムを英語でそれで、クラス/変数/関数名。ドイツ語圏以外の人々があなたのコードを理解しやすくなります。 " –
@Markusもう一つの小さなヒント、StackOverflowに関するコメント(質問と回答)は誰でも続く。 – Clemens
ハハ、それについてはごめんなさい=) –