小编Jas*_*ins的帖子

使用动态密钥反序列化JSON

我对JSON很新,目前正在学习(de)序列化.我正在从网页中检索JSON字符串并尝试将其反序列化为对象.问题是,根json密钥是静态的,但底层密钥是动态的,我无法预期它们反序列化.这是一个字符串的迷你示例:

{"daily":{"1337990400000":443447,"1338076800000":444693,"1338163200000":452282,"1338249600000":462189,"1338336000000":466626}
Run Code Online (Sandbox Code Playgroud)

对于我的应用程序中的另一个JSON字符串,我使用的是JavascriptSerializer并使用类结构预测密钥.将此字符串反序列化为对象的最佳方法是什么?

c# json dynamic deserialization

7
推荐指数
3
解决办法
1万
查看次数

EnumerableCollectionView到具有DataGrids的ListCollectionView

我有一个要尝试实现CustomSort的DataGrid。DataGrid ItemsSource始终返回的EnumerableCollectionView类型是不可排序的。我试图将EnumerableCollectionView转换为ListCollectionView,以便可以在其上实现CustomSort方法。基础集合是ObservableDictionary。如何将EnumerableCollectionView转换为ListCollectionView或从ItemsSource返回ListCollectionView?

c# sorting wpf datagrid collectionview

5
推荐指数
1
解决办法
1885
查看次数

动态数据显示图表:更改Y轴范围

有没有人知道是否有办法改变D3线图上的Y轴限制?

我正在使用Codeplex源代码中的最新版本... WPF版本,而不是Silverlight版本.

我正在绘制来自Android传感器的读数,并且范围值会发生很大变化.有时它大约为零,图表看起来像这样:

范围从-0.05到+0.05

然后值的大小发生变化,Y轴重新调整以显示整个数据,图形现在如下所示:

范围从-0.8到+ 0.6

查看Y值如何从图1更改为2.

我想要的是使Y轴具有我选择的固定值,比如-10到+10.然后图表将始终以相同的比例绘制.

有没有办法做到这一点?

图的XAML代码是这样的:

    <d3:ChartPlotter
        Name="gyroGraph"
        Margin="21,5,10,0"
        Grid.ColumnSpan="2"
        Background="White"
        Grid.Row="1"
        LegendVisibility="Collapsed"
        NewLegendVisible="False"
        MainHorizontalAxisVisibility="Collapsed"
        MainVerticalAxisVisibility="Collapsed">
        <d3:VerticalAxis
            FontSize="8" />
        <d3:Header
            Content="Angular Velocity"
            FontSize="11" />
    </d3:ChartPlotter>
Run Code Online (Sandbox Code Playgroud)

谢谢和最好的问候,罗德里戈巴斯尼亚克

c# wpf charts dynamic-data-display

4
推荐指数
1
解决办法
1万
查看次数

为什么创建一个新数组会抛出OutOfMemoryException?

这个抛出一个OutOfMemoryException.

目标框架.NET 3.5,在64位Windows 2008 R2 Standard上运行.

using System;

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            byte[] test = new byte[Int32.MaxValue];
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

根据文档,数组长度必须只是一个正32位整数,但显然这不是唯一需要注意的限制.

为什么在这种情况下内存耗尽?

.net c# arrays memory-management

4
推荐指数
2
解决办法
264
查看次数

在Rect对象上创建WPF工具提示

我正在使用一个开源图表库,在图表上创建标记.(动态数据显示)我正在创建的标记是使用Rect对象创建的.我注意到System.Windows.Shapes中的所有Shapes都有一个ToolTip属性,但System.Windows.Rect没有.我希望弹出一个工具提示,告诉用户当鼠标悬停在标记上时标记的价格值.当鼠标进入rect占据的区域时,我正在考虑创建并弹出一个工具提示,但我不知道有多少可能考虑到矩形将被图表缩放/平移.还有其他建议吗?

这是我正在创建的标记的代码(来自Felice Pollano博客)

using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Shapes;
using System.Windows.Controls;
using System.Text;
using System.Windows;
using System.Windows.Media;

namespace Microsoft.Research.DynamicDataDisplay.PointMarkers
{
public class CandleStickPointMarker:ShapePointMarker,ITransformAware
{
    public double CandlestickWidth
    {
        get { return (double)GetValue(CandlestickWidthProperty); }
        set { SetValue(CandlestickWidthProperty, value); }
    }
    public static readonly DependencyProperty CandlestickWidthProperty =
        DependencyProperty.Register("CandlestickWidth", typeof(double), typeof(CandleStickPointMarker), new UIPropertyMetadata(4.0));
    public double CandlestickStrokeWidth
    {
        get { return (double)GetValue(CandlestickStrokeWidthProperty); }
        set { SetValue(CandlestickStrokeWidthProperty, value); }
    }

    public static readonly DependencyProperty CandlestickStrokeWidthProperty =
        DependencyProperty.Register("CandlestickStrokeWidth", typeof(double), typeof(CandleStickPointMarker), new UIPropertyMetadata(1.0));
    public Brush …
Run Code Online (Sandbox Code Playgroud)

c# wpf tooltip rect dynamic-data-display

3
推荐指数
1
解决办法
3637
查看次数

ObservableDictionary的替代品,专注于性能

我正在处理的c#app使用了ObservableDictionary.这方面的性能不够快,无法满足其功能.ObservableDictionary非常快速地与(删除,添加和更新元素)进行交互,并且必须在每次进行更改时进行排序.有没有我可以使用ObservableDictionary的替代方案,它将专注于性能并仍然能够快速排序?

c# wpf performance

2
推荐指数
1
解决办法
513
查看次数

WPF D3动态数据显示多轴

我有一个动态数据显示图表.我正在使用ChartPlotter.它有一个默认的X和Y轴.我需要添加一个额外的X轴和两个Y轴.如何在XAML中实现此功能并在代码中动态实现?

开发人员可以使用这些图表通过提供轴编号的枚举(例如,Y1,Y2,Y3等)或X1,X2将数据附加到这些轴中的任何一个.目前我想拥有上述数量有限的轴.

有人可以帮我解决这个问题吗?我知道要添加注入绘图仪但是我必须添加多个注入绘图仪吗?如果轴数确实增加,我还需要添加多少?感觉有点低效,因此将轴添加到单个ChartPlotter的问题.

c# wpf dynamic-data-display

1
推荐指数
1
解决办法
2593
查看次数