效果图:

    

前台代码:

里面有一部分是我测试统计图的代码,不想改,感觉应该不影响理解....

<UserControl x:Class="Task_One.MainPage"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns:my="clr-namespace:System.Windows.Controls;assembly=System.Windows.Controls.Data"
xmlns:vc="clr-namespace:Visifire.Charts;assembly=SLVisifire.Charts"
mc:Ignorable="d"
d:DesignHeight="700" d:DesignWidth="1400" > <Grid x:Name="LayoutRoot1" Background="AliceBlue">
<Grid.RowDefinitions>
<RowDefinition Height="50"/>
<RowDefinition Height="*"/>
<RowDefinition Height="auto"/>
<RowDefinition Height="40"/>
</Grid.RowDefinitions>
<!--<Grid Grid.Row="0">
<Button Content="Button" HorizontalAlignment="Left" Margin="188,17,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click_1"/>
<TextBox x:Name="myText" HorizontalAlignment="Left" Height="23" Margin="10,17,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="143"/>
<TextBox x:Name="text18" HorizontalAlignment="Left" Height="23" Margin="430,16,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
<TextBox x:Name="text30" HorizontalAlignment="Left" Height="23" Margin="643,16,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/>
<TextBox x:Name="text40" HorizontalAlignment="Left" Height="23" Margin="858,16,0,0" TextWrapping="Wrap" VerticalAlignment="Top" Width="120"/> <TextBlock HorizontalAlignment="Left" Margin="358,20,0,0" TextWrapping="Wrap" Text="18岁占比:" VerticalAlignment="Top"/>
<TextBlock HorizontalAlignment="Left" Margin="569,20,0,0" TextWrapping="Wrap" Text="30岁占比:" VerticalAlignment="Top"/>
<TextBlock HorizontalAlignment="Left" Margin="795,20,0,0" TextWrapping="Wrap" Text="40岁占比:" VerticalAlignment="Top"/>
<Button Content="修改" HorizontalAlignment="Left" Margin="1014,17,0,0" VerticalAlignment="Top" Width="75" Click="Button_Click_2"/>
</Grid>-->
<Grid x:Name="LayoutRoot" Grid.Row="1" Background="AntiqueWhite"> <my:DataGrid AutoGenerateColumns="False" HorizontalAlignment="Left" Name="dgList" Width="250" Margin="10,10,0,60">
<my:DataGrid.Columns>
<my:DataGridTextColumn Header="ID" Binding="{Binding ID,Mode=OneWay}" Width="80"></my:DataGridTextColumn>
<my:DataGridTextColumn Header="手机号" Binding="{Binding WORKSTATION,Mode=OneWay}" Width="150"></my:DataGridTextColumn> </my:DataGrid.Columns>
</my:DataGrid> <vc:Chart Grid.Row="0" Name="chtChartOne" Height="300" Width="500">
<vc:Chart.AxesY>
<!--Y间隔-->
<vc:Axis Interval="20" Suffix="%"/>
</vc:Chart.AxesY>
</vc:Chart> </Grid> </Grid>
</UserControl>

后台代码:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using System.Collections.ObjectModel;
using Task_One.ServiceReference1;
using System.Reflection;
using Visifire.Charts; //因为要用到Assembly,所以引入此空间 namespace Task_One
{ public partial class MainPage : UserControl
{ public MainPage()
{
_YV18 = new Random().Next();
_YV30 = new Random().Next();
_YV40 = new Random().Next(); InitializeComponent();
InitPage(); }
private void client_GetDatabyNameCompleted(object sender, GetDatabyNameCompletedEventArgs e)
{ System.Collections.ObjectModel.ObservableCollection<ServiceReference1.Class1> temp = new ObservableCollection<ServiceReference1.Class1>(); temp = e.Result;
dgList.ItemsSource = temp;
//for (int i = 0; i < temp.Count; i++)
//{ // MessageBox.Show(temp[i].ID.ToString() + " and " + temp[i].WORKSTATION.ToString());
//}
} private void Button_Click_1(object sender, RoutedEventArgs e)
{ Task_One.ServiceReference1.ServiceClient client = new Task_One.ServiceReference1.ServiceClient(); client.GetDatabyNameAsync(Convert.ToInt32(myText.Text.ToString())); client.GetDatabyNameCompleted += new EventHandler<GetDatabyNameCompletedEventArgs>(client_GetDatabyNameCompleted); client.CloseAsync();
} #region 柱状图示例
/// <summary>
/// 画柱状图
/// </summary>
public void InitPage()
{
chtChartOne.Series.Clear(); chtChartOne.View3D = true;
//Title title = new Title(); //title.Text = "柱状图的标题内容";
//chtChartOne.Titles.Add(title); //统计资料列
DataSeries ds = new DataSeries();
//柱状类型
ds.RenderAs = RenderAs.StackedColumn;
//显示Lable
ds.LabelStyle = LabelStyles.OutSide;
ds.LabelEnabled = true;
//栏
ds.DataPoints.Add(new DataPoint() { AxisXLabel = "18-29岁", YValue = YV18 });
ds.DataPoints.Add(new DataPoint() { AxisXLabel = "30-39岁", YValue = YV30 });
ds.DataPoints.Add(new DataPoint() { AxisXLabel = "40-49岁", YValue = YV40 });
ds.DataPoints.Add(new DataPoint() { AxisXLabel = "50-64岁", YValue = 18.9 });
ds.DataPoints.Add(new DataPoint() { AxisXLabel = "65岁以上", YValue = 17.2 });
chtChartOne.Series.Add(ds);
}
#endregion /// <summary>
/// 修改比例值
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void Button_Click_2(object sender, RoutedEventArgs e)
{
YV18 = Convert.ToInt32(text18.Text.ToString()); if (Convert.ToInt32(text30.Text.ToString()) >= )
{
YV30 = Convert.ToInt32(text30.Text.ToString());
}
else
{
YV30 = ;
}
if (Convert.ToInt32(text40.Text.ToString())>=)
{
YV40 = Convert.ToInt32(text40.Text.ToString());
}
else
{
YV40 = ;
} InitPage(); } private Int32 _YV18;
private Int32 _YV30;
private Int32 _YV40; public Int32 YV18
{
get { return _YV18; }
set { _YV18 = value; }
}
public Int32 YV30
{
get { return _YV30; }
set { _YV30 = value; }
}
public Int32 YV40
{
get { return _YV40; }
set { _YV40 = value; }
} } }

源码:http://pan.baidu.com/s/1o6p2F9o

参考资料:http://www.cnblogs.com/Kinglee/archive/2009/08/25/1553938.html

http://www.nbcoder.net

Silverlight以列表显示数据库数据_DataGrid的更多相关文章

  1. 读取数据库数据,并将数据整合成3D饼图在jsp中显示

    首先我将生成饼图的方法独立写成一个PieChar.java类,详细代码如下:(数据库需要自己建,如有需要的话) import java.io.IOException; import java.sql. ...

  2. DBImport v3.44 中文版发布:数据库数据互导及文档生成工具(IT人员必备)

    前言: 距离上一个版本V3.3版本的文章发布,已经是1年10个月前的事了. 其实版本一直在更新,但也没什么大的功能更新,总体比较稳定,所以也不怎么写文介绍了. 至于工作上的事,之前有半年时间跑去学英语 ...

  3. MySQL数据库数据存放位置修改

    MySQL数据库数据存放位置修改 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品.MySQL 最流行的关系型数据库管理系统,在 WEB 应用方 ...

  4. 在Linux环境下,将Solr部署到tomcat7中,导入Mysql数据库数据, 定时更新索引

    什么是solr solr是基于Lucene的全文搜索服务器,对Lucene进行了扩展优化. 准备工作 首先,去下载以下软件包: JDK8:jdk-8u60-linux-x64.tar.gz TOMCA ...

  5. php实现数据库数据读取生成缓存文件

    有些时候我们希望减少对数据库的 查询来提高程序的性能,因为这些数据不是经常变更的,而是会在很长一段时间内都不会变化,因此,我们每连接一次数据库,都会把相应的结果用文件的形式保存 起来.比如对于一个商城 ...

  6. jxl读数据库数据生成xls 并下载

    1.所需jar jxl-2.6.10.jar jxls-core-1.0-RC-3.jar jxls-reader-1.0-RC-3.jar 2. excel修改行宽度封装 SheetColumn.j ...

  7. 效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中【附源代码下载】) 转

    效率最高的Excel数据导入---(c#调用SSIS Package将数据库数据导入到Excel文件中[附源代码下载])    本文目录: (一)背景 (二)数据库数据导入到Excel的方法比较   ...

  8. mysql load data infile的使用 和 SELECT into outfile备份数据库数据

    LOAD DATA [LOW_PRIORITY | CONCURRENT] [LOCAL] INFILE 'file_name.txt' [REPLACE | IGNORE] INTO TABLE t ...

  9. atitit.数据验证--db数据库数据验证约束

    atitit.数据验证--db数据库数据验证约束 1. 为了加强账户数据金额的安全性,需要增加验证字段..1 2. 创建帐户1 3. 更改账户2 4. ---code3 5. --fini4 1. 为 ...

随机推荐

  1. Editplus从下载到使用

    ☆ 准备工作 1,保证浏览器正常上网 2,能下载软件或已经下载到Editplus这个工具. ☆ 下载editplus 在浏览器输入http://www.editplus.com,然后回车.进入edit ...

  2. tomcat从下载到使用

    话说,某天正在和周公聊天下大事.被急促的电话铃声召唤回来,所谓江湖救急,于是远程一看.竟然是需要使用tomcat(汤姆家的猫),于是... 下面关于下载和配置tomcat的过程. ①.使用tomcat ...

  3. XML基础知识

    1.XML:(entension mark language) 可扩展的标记语言格式化的文本文件html(Hype Text Mark Language)(超文本标记语言)主要用于显示2.特点 一个良 ...

  4. Ubuntu 安装搜狗拼音及fcitx

    首先卸载原有ibus输入源: sudo apt-get remove ibus System Settings -> Software & Updates -> Other Sof ...

  5. PHP+jQuery 注册模块的改进之二:激活链接的URL设置与有效期

    接<PHP+jQuery 注册模块的改进之一>继续修改: ①在注册成功后返回登录邮件页面( maillogin.php ),在页面中用户可以点击链接跳转到自己注册邮箱的登录页面,可以再次发 ...

  6. 解决Windows照片查看器中图片显示发黄的问题

    这其实是ICC颜色配置的问题,发生在Windows7自动更新下载了显示器的驱动后,自动安装后显示器的颜色配额制文件自动改为新下载的配置,导致显卡和显示器颜色配置不兼容的问题,不过不用担心,非常容易解决 ...

  7. php调用empty出现错误Can't use function return value in write context

    php调用empty出现错误Can't use function return value in write context 2012-10-28 09:33:22 | 11391次阅读 | 评论:0 ...

  8. jquery动态加载问题

    对于append的元素,原有的方法不生效 解决:用on方法 找到的:http://www.zhidao91.com/jquery-html-live-on/ 解决使用jQuery采用append添加的 ...

  9. PHP7革新与性能优化

    有幸参与2015年的PHP技术峰会(PHPCON),听了鸟哥(惠新宸)的关于PHP7的新特性和性能优化的分享,一切都令人感到激动.鸟哥是国内最权威的PHP专家,他的分享有很多非常有价值的东西,我通过整 ...

  10. buffer overflow vulnerabilitie

    Computer Systems A Programmer's Perspective Second Edition Avoiding security holes.For many years,bu ...