Windows Presentation Foundation
From Richard's Wiki
- Set max characters in column for WPF DataGridColumn. Use DataGridTextColumn.EditingElementStyle.Setters.Add(new Setter(TextBox.MaxLengthProperty, maxColumnLength)):
private void DataGrid_AutoGeneratedColumns(object sender, EventArgs e) { DataGrid datagrid = sender as DataGrid; if (datagrid == null) return; Type entityMetadataType = MetadataType(ViewModel.CurrentType); var columns = datagrid.Columns; var orderedColumns = columns .OrderBy(c => DisplayMetadataHelper.GetDisplayInfo(entityMetadataType, c.Header as string).DisplayOrder) .ToList(); foreach (DataGridColumn dataGridColumn in columns) { dataGridColumn.DisplayIndex = orderedColumns.IndexOf(dataGridColumn); DisplayMetadataHelper.DisplayInfo displayInfo = DisplayMetadataHelper.GetDisplayInfo(entityMetadataType, dataGridColumn.Header as string); dataGridColumn.Header = displayInfo.DisplayName; if ((dataGridColumn is DataGridTextColumn) && (displayInfo.MaxLength.HasValue)) { int maxColumnLength = displayInfo.MaxLength.Value; Style newStyle = new Style(typeof(TextBox), ((DataGridTextColumn)dataGridColumn).EditingElementStyle); newStyle.Setters.Add(new Setter(TextBox.MaxLengthProperty, maxColumnLength)); ((DataGridTextColumn) dataGridColumn).EditingElementStyle = newStyle; } } }
- Debugging XAML Bindings in WPF
- WPF Apps With The Model-View-ViewModel Design Pattern (MSDN Magazine)
- A Guided Tour of WPF - A simple introduction to WPF
- WPF Tutorial - Using WPF In WinForms
- WPF: Validation made easy with IDataErrorInfo
- Customize Data Display with Data Binding and WPF (How to display errors, handle IDataErrorInfo)
- Silverlight and XAML Namespace Declarations
- media:WpfCustomBindingClass.zip Example Custom WPF Binding Class VS2008 Project