当前位置:首页 > 代码 > 正文

wpf优秀开源代码合集(wpf 开源库)

admin 发布:2022-12-19 19:38 141


今天给各位分享wpf优秀开源代码合集的知识,其中也会对wpf 开源库进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!

本文目录一览:

wpf有没有好用的chart控件?

这个功能将能够使得我们在一个3D图表上添加或控制第三个轴。个人觉得最新的这个SurfaceXYZ图表最炫的功能就是创使用来自不同城市的数据建地理位置上精确的表面。这个功能可以用于很多的地方,比如说图表绘制、每个城市会甚至是一个国家的总销售收入等。 在本次的示例中,我们假设需要显示整个佛罗里达超过800家店的客户满意度,我们将按照城市的字母顺序,然而定位指定商店的分数是非常容易的,但是难的是了解国家哪些区域的商店比其他的地方做的更好,并将其绘制在表面上。在另一方面,将会打组所有接近的商店,这样就会很好的找到最好和最差的区域时哪里,这种情况特别适合于一个国家的地图,最终的效果将会如下所示: 选择一张地图,我选择了Mercator墨卡托投影的地图,也许你还没注意到,我们已将这个所选的地图放在了表面。这样做是因为用于表面的三角测量法将会插入所有的数据到我们的表面上,从墨西哥湾商店的数据收集来造成一种假象。值得注意的是,我们将这张图盖住了城市是透明的区域,这样的话,非透明的海洋将会覆盖插入的数据就会显得没有意义。下面是我们没有表面的地图的样子。 现在已经选择了地图,来看看数据资料: 我们有着商店的经度和纬度,这将会值得通过GPS找到这个位置非常的容易。接下来,我们要将它转化成在我们随所挑选的地图上的像素值,由于这是一个墨卡托投影,使用下面的公式来进行转换(φ表示的是经度,λ表示的是纬度)。 一旦将我们的数据格式化之后,就可以将数据传递到图表,看看会得到什么样的结果: SurfaceXYZ surfaceXYZ = new SurfaceXYZ(); surfaceXYZ.ShowPointsGridlines = false; surfaceXYZ.ShowSeriesGridlines = false; surfaceXYZ.ShowContourLines = true; chart1.ItemsSource = chartData; SeriesAttributes series0 = new SeriesAttributes(); SeriesAttributes series1 = new SeriesAttributes(); series0.GalleryAttributes = surfaceXYZ; series1.GalleryAttributes = surfaceXYZ; series0.BindingPath = "Score"; series0.BindingPathX = "X"; series1.BindingPath = "Y"; chart1.Series.Add(series0); chart1.Series.Add(series1); 值得注意的是,我们在这里需要两个系列的XYZ图表,第二个图表将会被绑定到Z数据,但是由于我们希望在上面的表面是以一种二维的方式,我们将它称为“Y”(在地图上或是在纬度上)。Y轴表示着我们正在传递的值,如果这不是二维的图表,它将会代表着深度或高度。 在表面多余的代码,依然会有用,如果在图表上做一些变动使它变成轮廓。 ChartFX.WPF.View3D view3D = chart1.View3D; view3D.IsEnabled = true; view3D.AngleX = -90; view3D.AngleY = 0; view3D.Projection = Projection.Orthographic; view3D.BackWallVisibility = Visibility.Collapsed; chart1.AxisX.Line.Visibility = Visibility.Hidden; chart1.AxisX.Grids.Major.Visibility = Visibility.Hidden; view3D.Lights.Clear(); System.Windows.Media.Media3D.AmbientLight ambLight = new System.Windows.Media.Media3D.AmbientLight(Color.FromRgb(0xD0, 0xD0, 0xD0)); view3D.Lights.Add(ambLight); 如果你仔细看会发现,这个“Florida shape”看起来有一点扭曲,这个主要是因为我们的轮廓是放置在一个平面上的,而不是我们选择的地图的比例设置。此外,在X轴和Z轴上的最大值并不是在我们地图上使用的值。

谁能给个WPF使用mvvmLight模式的开源例子

为何要做Viewmodel中定义控件呢?在Viewmodel定义PasswordBox的需要获得的属性,如Text,然后在view中应用绑定就可以了。

求wpf代码,鼠标移上列表某列单元格时,用tooltips展示与该单元格数据相关的一个列表(数据是个一集合)

这有两种做法,都很简单,我跟你说下思路。

第一种做法:Datagrid绑定的是数据实体集合,每一行的dataContext是一个数据实体对象。这个对象里可以加个List属性,用来存放悬浮窗里展示的列表。然后可以给datagridrow或者datagridcell上添加MouseMove事件,后台获取到datagridrow或cell的datacontext。然后刷新tooltips里listbox的Itemsouce即可。

第二种方法:无需改变实体对象结构。在后台定义一个全局的用来存放悬浮窗显示列表List对象,在第一种方法的MouseMove事件里获取datacontext。然后根据这个datacontext(其实就是实体对象)的id或者其他什么值,去动态刷新全局的List。然后再把这个list绑定到tooltips里。

第一种方法是写死的(tooltip展示的list数据都事先加载好),第二种方法是动态的,比较省资源。

WPF 滚动字幕代码

public partial class ScrollingTextControl : UserControl

{

Timer MarqueeTimer = new Timer();

String CurrentText = "滚动文字";

String OurText;

public ScrollingTextControl()

{

InitializeComponent();

MarqueeTimer.Interval = 150;

MarqueeTimer.Enabled = true;

MarqueeTimer.Tick += new EventHandler(MarqueeUpdate);

}

public int Interval

{

get { return MarqueeTimer.Interval; }

set { MarqueeTimer.Interval = value; }

}

public override String Text

{

get { return OurText; }

set { OurText = value; CurrentText = OurText; }

}

private void ScrollingTextControl_Paint(object sender, PaintEventArgs e)

{

TextRenderer.DrawText(e.Graphics, CurrentText, Font, ClientRectangle,

SystemColors.ControlText);

}

void MarqueeUpdate(object sender, EventArgs e)

{

CurrentText = CurrentText.Substring(1) + CurrentText[0];

Invalidate();

}

}

求wpf代码,怎样在wpf的richtextbox控件中的指定位置插入table,后台代码实现。

var trg = new TableRowGroup();

for (int r = 0; r  5; r++)

{

    var tr = new TableRow();

    for (int c = 0; c  5; c++)

    {

        var sf = string.Format("{0}x{1}", r, c);

        var run = new Run(sf);

        var par = new Paragraph(run);

        var td = new TableCell();

        td.Blocks.Add(par);

        tr.Cells.Add(td);

    }

    trg.Rows.Add(tr);

}

var t = new Table();

t.RowGroups.Add(trg);

rich.Selection.Text = "";

var pt = rich.Selection.Start.InsertParagraphBreak();

rich.Document.Blocks.InsertBefore(pt.Paragraph, t);

WPF 的开源项目有哪些

对于老牌控件提供商葡萄城来说,这是WPF系列控件一个重要的机遇,因此,Spread Studio for WPF产品做了一次重要更新,并随着Spread Studio 8.0发布

wpf优秀开源代码合集的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于wpf 开源库、wpf优秀开源代码合集的信息别忘了在本站进行查找喔。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/20924.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载