关于silverlight中button的数据绑定问题

问题描述

我想做一个框,左边是按钮,点击按钮的时候在右边显示对应的内容,但是这些按钮时每个专业的名称,需要绑定数据库中的名称,请问高手改怎么绑定,谢谢!这是其页面对应的代码:usingSystem;usingSystem.Collections.Generic;usingSystem.Linq;usingSystem.Net;usingSystem.Windows;usingSystem.Windows.Controls;usingSystem.Windows.Documents;usingSystem.Windows.Input;usingSystem.Windows.Media;usingSystem.Windows.Media.Animation;usingSystem.Windows.Shapes;usingPetroMentor.Service;usingSystem.Collections.ObjectModel;usingHSE.Common;usingPetroMentor.Service.Common;usingHSE.Common;usingNewtonsoft.Json.Converters;usingPetroMentor.Service.Common;usingNewtonsoft.Json;usingHSE.Events;usingDIST.LR.ZHJG.Events;namespaceHSE{publicpartialclassZXMSelect:ChildWindow{WebClientclient;publicObservableCollection<T_ZRLS_ZRQJCXM_S>ZRQJCXMS{get;set;}publicObservableCollection<T_ZRLS_ZRQJCXM_S>SelectZRQJCXMS{get;set;}publicZXMSelect(){InitializeComponent();this.SelectZRQJCXMS=newObservableCollection<T_ZRLS_ZRQJCXM_S>();client=newWebClient();//在异步资源下载操作完成时发生client.DownloadStringCompleted+=newDownloadStringCompletedEventHandler(client_DownloadStringCompleted_Select);}publicvoidInitZRQJCXM(){Typetype=typeof(T_ZRLS_ZRQJCXM_S);Uriendpoint=newUri(String.Format("{0}QueryHanlder.ashx?{1}={2}&{3}={4}&{5}={6}&{7}={8}&{9}={10}&{11}={12}",SystemVar.ServiceUrl,Consts.MODULE,type.Name,Consts.PAGE_NUMBER,1,Consts.PAGE_SIZE,20000,Consts.WHERE,"1=1",Consts.TABLE,"T_ZRLS_ZRQJCXM",Consts.R,newRandom().NextDouble().ToString()));client.DownloadStringAsync(endpoint);}privatevoidclient_DownloadStringCompleted_Select(objectsender,DownloadStringCompletedEventArgse){try{if(e.Result!=null){CommonQueryInfo<T_ZRLS_ZRQJCXM_S>info=Util.JsonToObject<CommonQueryInfo<T_ZRLS_ZRQJCXM_S>>(e.Result)asCommonQueryInfo<T_ZRLS_ZRQJCXM_S>;if(info!=null&&info.ResultInfos!=null&&info.ResultInfos.Count>0){this.ZRQJCXMS=CollectionExtensions.ToObservableCollection<T_ZRLS_ZRQJCXM_S>(info.ResultInfos);this.lstZrqjcxm.ItemsSource=this.ZRQJCXMS;}}}catch(Exceptionex){MessageBox.Show(string.Format("获取岗位信息发生异常!{0}",ex.Message));//EventAggregatorRepository.EventAggregator.GetEvent<BusyIndicatorEvent>().Publish(newBusyInfo(){IsBusy=false,BusyContent="数据获取中..."});}}privatevoidOKButton_Click(objectsender,RoutedEventArgse){this.DialogResult=true;}privatevoidCancelButton_Click(objectsender,RoutedEventArgse){this.DialogResult=false;}privatevoidRadToggleButton_Checked(objectsender,RoutedEventArgse){Telerik.Windows.Controls.RadToggleButtonbtn=senderasTelerik.Windows.Controls.RadToggleButton;T_ZRLS_ZRQJCXM_Szrq=btn.TagasT_ZRLS_ZRQJCXM_S;if(zrq!=null)this.SelectZRQJCXMS.Add(zrq);}privatevoidRadToggleButton_Unchecked(objectsender,RoutedEventArgse){Telerik.Windows.Controls.RadToggleButtonbtn=senderasTelerik.Windows.Controls.RadToggleButton;T_ZRLS_ZRQJCXM_Szrq=btn.TagasT_ZRLS_ZRQJCXM_S;if(zrq!=null)this.SelectZRQJCXMS.Remove(zrq);}privatevoidbtn_Zjzy_Click(objectsender,RoutedEventArgse){ZXMSelectzrqwin=newZXMSelect();zrqwin.Closed+=(s1,e1)=>{if(zrqwin.DialogResult.HasValue&&zrqwin.DialogResult.Value&&zrqwin.SelectZRQJCXMS!=null){//viewmodel.SaveModel.ZRQJCXMS=zrqwin.SelectZRQJCXMS;}};zrqwin.InitZRQJCXM();}}}

解决方案

解决方案二:
你可以看看msdn上的例子是怎样绑定到StudentName的。
解决方案三:
欢迎提问silverlight/wpf问题。希望.net论坛多一些wpf/silverlight问题,提高初学者UI程序开发的层次。不能只有一些简单的winform问题。
解决方案四:
另外也有很多许多年前的Blend教程,方便于学习这类绑定的(借助美工板)开发操作。例如:
解决方案五:
非常感谢,有不明白的再请教您!

时间: 2024-12-21 13:12:51

关于silverlight中button的数据绑定问题的相关文章

Silverlight中使用MVVM(7):DataGrid中触发Button的Click事件

转自http://www.cnblogs.com/626498301/archive/2012/02/02/2335439.html   Silverlight中使用MVVM(1)--基础 Silverlight中使用MVVM(2)-提高 Silverlight中使用MVVM(3)-进阶 Silverlight中使用MVVM(4)-演练 Silverlight中使用MVVM(5)-Command II Silverlight中使用MVVM(6):AutoComplteBox的异步过滤 毕业后忽然

Silverlight中的像素和比例缩放

最近在学习Silverlight,也在准备考六级,同时在网上找到的一些Silverlight的教程都是beta1的,在正式版中有很多的问题,所以尝试着通过翻译Jesse Liberty的博客来提高自己,同时也希望通过这样和大家一起学习. 原文地址:http://silverlight.net/blogs/jesseliberty/archive/2008/10/21/sizing-in-silverlight-pixels-and-stars.aspx 注:Star翻译为比例缩放,找了几本字典,

学Silverlight 2系列(21):如何在Silverlight中调用JavaScript

Silverlight中内置了对于HTML.客户端脚本等的支持.很多情况下,我们编 写的Web应用程序中用了一些JavaScript或者AJAX框架,我们希望能够在 Silverlight调用某些脚本方法,或者说在Silverlight中触发某个脚本的执行, 这时就需要用到在Silverlight中调用JavaScript,本文将简单介绍这一内容. 使用GetProperty获取脚本对象 先来看一个简单的例子,在Silverlight测试页面中放入一个div用作显示信 息: <div id=&quo

明晰Silverlight中的依赖属性

在c#中--得益于c#3.0中的自动属性--我们可以十分轻松的通过如下代码创建一个叫做 "AuthorName"的属性. public string AuthorName { get; set; } 上面的代码就是我们熟悉的CLR属性,我们可以很方便的读/取这个属性的值.不过在 silverlight的世界中如果你想做更多更牛的事情,CLR属性就显得有些力不从心了.它们包 括--动画.数据绑定.样式/模板等等. 因此,微软在WPF中提出了依赖属性(Dependency Property

Silverlight中的序列化

序列化简言之是这样一种能力:能够把复杂的对象(Object)变成某种格式的字符串(常见的格式有xml,string,二进制文件等),这样可以方便的在各种系统中传输或交换(比喻socket编程中的数据包只能用byte[]传输),接收方得到该字符串后,通过反序列化可以还原为复杂对象,进而调用对象的方法或属性 -- 跟反射有点沾边:) 这里先给出一个WinForm的序列化例子,功能为通过打开文件对话框选择一个文件后,构造一个复杂对象,然后序列化为二进制格式,得到该格式后,再反序列化(还原)为复杂对象

Silverlight实用窍门系列:40.Silverlight中捕捉视频,截图保存到本地【附带实例源码】

在Silverlight中我们可以捕捉视频设备以制作视频会议系统,或者通过视频设备截图功能上传头像等功能. 下面我们通过一个简单的实例来访问视频设备,并且截取图像下载该截图文件至本地. 一.在Silverlight运行界面中我们检查系统默认摄像头和麦克风是否可用如下图: 二.我们看Xaml代码如下所示: <Grid x:Name="LayoutRoot" Background="White"> <Border BorderBrush="S

Silverlight实用窍门系列:49.Silverlight中管理独立存储--Isolated Storage【附带实例源码】

Silverlight中的独立存储是其内部的可信任的可访问文件空间,在这里你可以使用Silverlight随意的创建.读取.写入.删除目录和文件,它有一些类似于Cookie,但是它可以在客户端保存大量的数据.这个空间默认是1M,如果不够的时候可以申请扩大容量. 网站+用户+应用程序定位一个独立存储,也就是说必须得相同网站,相同用户,相同应用程序才能够访问这个独立的存储空间.独立存储是IsolatedStorageFile密封类来进行设置的,这个类分布在命名空间System.IO.Isolated

Silverlight实用窍门系列:47.Silverlight中元素到元素的绑定,以及ObservableCollection和List的使用区别

 问题一:在某一些情况下,我们使用MVVM模式的时候,对于某一个字段(AgeField)需要在前台的很多个控件(A.B.C.D.E)进行绑定,但是如何能够让我们后台字段名改变的时候能够非常方便的改变所有使用了这个字段的控件呢?         回答:使用Element to Element Binding,将AgeFiled绑定到A控件,然后再让B.C.D.E控件绑定A控件的使用AgeField字段的属性.         例如:字段(AgeField)的数据是年龄大小,A.B.C.D.E控件分

一步一步学Silverlight :在Silverlight中如何用JavaScript调用.NET代码

概述 Silverlight 2 Beta 1版本发布了,无论从Runtime还是Tools都给我们带来了很多的惊喜,如支持框架语言Visual Basic, Visual C#, IronRuby, Ironpython,对JSON.Web Service.WCF以及Sockets的支持等一系列新的特性.<一步一步学Silverlight 2系列>文章将从Silverlight 2基础知识.数据与通信.自定义控件.动画.图形图像等几个方面带您快速进入Silverlight 2开发. Silv