一、
用过asp.net的Gridview 应该熟悉datagrid控件 Silverlight DataGrid常用事件:
BeginningEdit:发生于一个单元格或行进入编辑模式之前。 CellEditEnded:发生于一个单元格编辑已被确认或取消。 CellEditEnding:发生于一个单元格正在结束编辑时。 CurrentCellChanged:发生于一个单元格成为当前单元格时。
PreparingCellForEdit:发生于在DataGridTemplateColumn下的单元格进入编辑模式时。
SelectionChanged:发生于当SelectedItem或SelectedItems属性值改变时。
Silverlight DataGrid常用方法: BeginEdit:使DataGrid进入编辑状态。 CancelEdit:取消DataGrid的编辑状态。 CollapseRowGroup:闭合DataGrid的行分组。 CommitEdit:确认DataGrid的编辑完成。 ExpandRowGroup:展开DataGrid的行分组。 GetGroupFromItem:从具体Item中得到分组。 ScrollIntoView:滚动DataGrid视图。 Silverlight DataGrid常用属性:
AlternatingRowBackground:获取或设置一个笔刷用来描绘DataGrid奇数行的背景。
AreRowDetailsFrozen:获取或设置一个值用来判断是否冻结每行内容的详细信息。
AreRowGroupHeadersFrozen:获取或设置一个值用来判断是否冻结分组行的头部。
AutoGenerateColumns:获取或设置一个值用来判断是否允许自动生成表列。 CanUserReorderColumns:获取或设置一个值用来判断是否允许用户重新排列表列的位置。
CanUserSortColumns:获取或设置一个值用来判断是否允许用户按列对表中内容进行排序。
CellStyle:获取或设置单元格的样式。 ColumnHeaderHeight:获取或设置列头的高度。 ColumnHeaderStyle:获取或设置列头的样式。 Columns:获取组件中包含所有列的集合。 ColumnWidth:获取或设置列宽。
CurrentColumn:获取或设置包含当前单元格的列。 CurrentItem:获取包含当前单元格且与行绑定的数据项。 DragIndicatorStyle:获取或设置当拖曳列头时的样式。 DropLocationIndicatorStyle:获取或设置呈现列头时的样式。 FrozenColumnCount:获取或设置冻结列的个数。 GridLinesVisibility:获取或设置网格线的显示形式。 HeadersVisibility:获取或设置行头及列头的显示形式。 HorizontalGridLinesBrush:获取或设置水平网格线的笔刷。
HorizontalScrollBarVisibility:获取或设置水平滚动条的显示样式。 IsReadOnly:获取或设置DataGrid是否为只读。 MaxColumnWidth:获取或设置DataGrid的最大列宽。 MinColumnWidth:获取或设置DataGrid的最小列宽。 RowBackground:获取或设置用于填充行背景的笔刷。
RowDetailsTemplate:获取或设置被用于显示行详细部分的内容的模板。
RowDetailsVisibilityMode:获取或设置一个值用以判定行详细部分是否显示。
RowGroupHeaderStyles:获取呈现行分组头部的样式。 RowHeaderStyle:获取或设置呈现行头的样式。 RowHeaderWidth:获取或设置行头的宽度。 RowHeight:获取或设置每行的高度。 RowStyle:获取或设置呈现行时的样式。
SelectedIndex:获取或设置当前选中部分的索引值。 SelectedItem:获取或设置与当前被选中行绑定的数据项。
SelectedItems:获取与当前被选中的各行绑定的数据项们的列表(List)。 SelectionMode:获取或设置DataGrid的选取模式。 VerticalGridLinesBrush:获取或设置垂直网格线的笔刷。
VerticalScrollBarVisibility:获取或设置垂直滚动条的显示样式。 1指定Column列表
还有个DataGridCheckBoxColumn 它主要是Checkbox选项 boolean类型 另外DataGridTemplateColumn是自定义布局数据模板 2 加载时候显示填色
SolidColorBrush r = new SolidColorBrush(Colors.Red);
private void dataGrid1_LoadingRow(object sender, DataGridRowEventArgs e)
{
CData c = e.Row.DataContext as CData; if (c.id % 5 == 0)
e.Row.Background = r; else
e.Row.Background = new SolidColorBrush(Colors.White);
}
3 Row详细显示模板
Silverlight DataGrid使用之二 更新行篇 2011-06-05 16:08
首先在wcf加上一个编辑方法 [ServiceContract]
public interface IService1 {
[OperationContract]
List
bool EditCData(CData c);
// TODO: 在此添加您的服务操作 }
// 使用下面示例中说明的数据协定将复合类型添加到服务操作 [DataContract]
public class CData {
[DataMember] public int id; [DataMember]
public string text; }
[System.ServiceModel.Activation.AspNetCompatibilityRequirements(RequirementsMode =
System.ServiceModel.Activation.AspNetCompatibilityRequirementsMode.Required)]
public class Service1 : IService1 {
public List
SqlConnection cn = new
SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings[\ SqlCommand cmd=new SqlCommand (\t1\
cn.Open();
SqlDataReader dr=cmd.ExecuteReader( ); List
CData c = new CData { id =
int.Parse(dr[\ CList.Add(c);
}