Silverlight DataGrid使用之二 更新行篇
来源:互联网 发布:淘宝上什么最好卖 编辑:程序博客网 时间:2024/05/22 01:48
首先在wcf加上一个编辑方法
[ServiceContract]
public interface IService1
{
[OperationContract]
List<CData> GetCDatas();
[OperationContract]
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<CData> GetCDatas()
{
SqlConnection cn = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["sldatabaseConnectionString"].ConnectionString);
SqlCommand cmd=new SqlCommand ("select id,text from t1",cn);
cn.Open();
SqlDataReader dr=cmd.ExecuteReader( );
List<CData> CList=new List<CData> ();
while (dr.Read())
{
CData c = new CData { id = int.Parse(dr["id"].ToString()), text = dr["text"].ToString() };
CList.Add(c);
}
cn.Close();
return CList;
}
public bool EditCData(CData c)
{
SqlConnection cn = new SqlConnection(System.Web.Configuration.WebConfigurationManager.ConnectionStrings["sldatabaseConnectionString"].ConnectionString);
SqlCommand cmd = new SqlCommand("update t1 set text=@text where id=@id",cn);
cmd.Parameters.Add("@text", System.Data.SqlDbType.NVarChar).Value = c.text;
cmd.Parameters.Add("@id", System.Data.SqlDbType.Int).Value=c.id;
cn.Open();
int r = cmd.ExecuteNonQuery();
cn.Close();
if (r > 0)
return true;
else
return false;
}
}
在数据库 创建一个表 随便取名
xaml代码
<sdk:DataGrid AutoGenerateColumns="False" Height="236" HorizontalAlignment="Left" Name="dataGrid1" VerticalAlignment="Top" Width="368" LoadingRow="dataGrid1_LoadingRow" FrozenColumnCount="1"RowEditEnded="dataGrid1_RowEditEnded">
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Header="编号" Binding="{Binding id}"></sdk:DataGridTextColumn>
<sdk:DataGridTemplateColumn Header="文本">
<sdk:DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Text="{Binding text}" />
</DataTemplate>
</sdk:DataGridTemplateColumn.CellTemplate>
<sdk:DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox Text="{Binding Mode=TwoWay, Path=text}"></TextBox>
</DataTemplate>
</sdk:DataGridTemplateColumn.CellEditingTemplate>
</sdk:DataGridTemplateColumn> </sdk:DataGrid.Columns>
</sdk:DataGrid>
cs代码
private void dataGrid1_RowEditEnded(object sender, DataGridRowEditEndedEventArgs e)
{
CData c = e.Row.DataContext as CData;
Service1Client s = new Service1Client();
s.EditCDataCompleted += new EventHandler<EditCDataCompletedEventArgs>(s_EditCDataCompleted);
s.EditCDataAsync(c);
}
void s_EditCDataCompleted(object sender, EditCDataCompletedEventArgs e)
{
if (e.Result)
System.Windows.Browser.HtmlPage.Window.Alert("成功");
else
System.Windows.Browser.HtmlPage.Window.Alert("失败");
}
然后测试 显示列表后 双击一个行
然后点击DataGrid边框 结束编辑状态
- Silverlight DataGrid使用之二 更新行篇
- SilverLight 学习笔记二之DataGrid
- Silverlight 3 DataGrid 二
- silverlight DataGrid 显示篇
- [Silverlight]简单实现DataGrid使用CheckBox选择行
- Silverlight之DataGrid的列格式化日期
- Silverlight之DataGrid的列格式化日期
- silverlight使用DataGrid实现类似Treelistview效果
- silverlight使用DataPager实现DataGrid分页
- Flex 学习之路之二十二 DataGrid的使用
- dojo DataGrid使用二
- (源码)Silverlight DataGrid 应用,Demo更新至1.2版本!!!!!!!!!!!!!
- Silverlight 解决 更新数据后 datagrid同步问题
- 在Silverlight中使用WCF服务之二
- 新手篇之datagrid编辑,更新列示例
- Silverlight Datagrid 行上增加ToolTip
- Silverlight DataGrid行背景分组着色
- Silverlight之摄像头使用
- fprintf printf 区别
- 程序员也敢吃10元的盒饭
- C# 无效的:URI Dos 路径必须是根路径
- 关闭widnows2003 IE增强的安全配置
- 变量的存储区
- Silverlight DataGrid使用之二 更新行篇
- poj2479
- MFC中的CDC 绘图
- 打印菱形的心得
- WPF 如何删除已经打开的图片文件
- silverlight登陆页面的小细节【自动设置焦点,回车登陆】
- 四个救命的函数
- J2ME中>>和>>>以及C中的数据类型
- SQL语句复制表的方法