Tag Archives: WPF

WPF Databind to read-only DataGrid.SelectedItems property

Thanks a million to the reference below:

I have spent one day looking for a MVVM solution to bind to DataGrid.SelectedItems property. WPF does not allow this because DataGrid.SelectedItems is read-only. However, I need to get hold of all selected items when performing “delete” action, or just to decide if a right-click menu item should appear or not, and I CAN’T!!!

After a day’s Googling and trying out millions of not-straightforward-and-ultimately-not-working ways, I have found the article above, which consists of 3 simple classes that just work! I would really like to share this with others who are having this trouble.

WPF DataGrid tricks

  • Edit in upper case for a text column:
    <DataGridTextColumn Header="Fund" Binding="{Binding Fund}">
             <Style TargetType="TextBox">
                 <Setter Property="CharacterCasing" Value="Upper"/>
  • String.Empty in an array
     <x:Static Member="system:String.Empty" />
  • DataGridComboBoxColumn bindings
     <DataGridComboBoxColumn Header="FundShare"
     SelectedItemBinding="{Binding FundShare}"
     ClipboardContentBinding="{Binding FundShare.FundShareName}"
     ItemsSource="{Binding Source={x:Static viewmodel:IFSFundMappingViewModel.FundShares}}">