会計年度を一覧表示するデータバインドされたコンボ ボックスがあります。ユーザーは、このコンボ ボックスから値を選択し、[クライアント] コンボ ボックスから値を選択して、ユーザーが処理する会計年度のそのクライアントのレポートを選択します。過去のドキュメントを処理することは可能ですが、デフォルトの使用例は終了したばかりの会計年度のレポートを処理することなので、コンボ ボックスをデフォルトで (現在) 2011/2012 に設定したいと思います。これは、FinancialYear の文字列プロパティです。実在物。
私のxaml:
<ComboBox Canvas.Left="353"
Canvas.Top="18"
Height="23"
Name="cboFinancialYear"
Width="120"
DisplayMemberPath="FinancialYear1"
ItemsSource="{Binding}"
SelectedValuePath="FinancialYearID" />;
Window_Loaded
私のコードビハインドのメソッド:
private void Window_Loaded(object sender, RoutedEventArgs e)
{
String thisYear = MainViewModel.GetCurrentFinancialYear();
lGFinanceEntities = new LGFinanceEntities();
// Load data into FinancialYears. You can modify this code as needed.
CollectionViewSource financialYearsViewSource = ((CollectionViewSource)(this.FindResource("financialYearsViewSource")));
ObjectQuery<FinancialYear> financialYearsQuery = this.GetFinancialYearsQuery(lGFananceEntities);
financialYearsViewSource.Source = financialYearsQuery.Execute(System.Data.Objects.MergeOption.AppendOnly);
cboFinancialYear.SelectedItem = thisYear;
}
ただし、これは効果がないようで、コンボ ボックスで選択された項目は FinancialYear テーブルの最初の年です。
誰かが私が間違ったことを指摘できますか? 私は見回しましたが、コンボボックスのデフォルト値の実装のほとんどは、実際にデフォルト値を選択したいのに対し、指示テキストとして「年を選択する」ソートのようです。