小编Mer*_*ham的帖子

将附加数据设置为highcharts系列

有没有办法将一些额外的数据传递给将用于在图表'工具提示'中显示的系列对象?

例如

 tooltip: {
     formatter: function() {
               return '<b>'+ this.series.name +'</b><br/>'+
           Highcharts.dateFormat('%b %e', this.x) +': '+ this.y;
     }
Run Code Online (Sandbox Code Playgroud)

这里我们只能将series.name,this.x和this.y用于该系列.假设我需要单独传递另一个动态值与数据集,并可以通过系列对象访问.这可能吗?

谢谢大家.

javascript jquery highcharts

108
推荐指数
3
解决办法
9万
查看次数

C#应用程序既有GUI又有命令行

我目前有一个带GUI的应用程序.

是否可以从命令行使用相同的应用程序(没有GUI和使用参数).

或者我是否必须为命令行工具创建单独的.exe(和应用程序)?

c# user-interface command-line winforms

46
推荐指数
2
解决办法
3万
查看次数

服务定位器模式与抽象工厂模式有什么不同?

乍一看,服务定位器模式与我的抽象工厂模式看起来相同.它们似乎都具有相同的用途(您查询它们以接收抽象服务的实例),并且当我阅读有关依赖注入时它们都被提及.

但是,我已经看到服务定位器模式被描述为一个糟糕的想法,但在至少一个主要的依赖注入框架中看到了对抽象工厂模式的直接支持.

如果它们不相同,有什么区别?

design-patterns service-locator abstract-factory

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

在VIM中搜索和替换会导致尾随字符

这就是我试图做的事情:

%s/Article/<h2>Article</h2>/gi
Run Code Online (Sandbox Code Playgroud)

不幸的是,每次我通过我的vim编辑器执行此命令时,它都说:

尾随字符

为了缓解上述情况,我执行了以下操作:

%s/\s*\r*$//
Run Code Online (Sandbox Code Playgroud)

并且它成功执行,但当我返回原始搜索和替换命令时,它再次显示"尾随字符"并且不执行搜索和替换操作.

我在这做错了什么?

linux vi vim command-line-arguments

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

可以替换链式开关/ goto的设计模式?

我有一个代码用于将我的应用程序资源更新为当前应用程序版本 应用程序更新后调用此代码.

int version = 1002;   // current app version

switch(version)
{
   case 1001:
      updateTo1002();
      goto case 1002;

   case 1002:
      updateTo1003();
      goto case 1003;

   case 1003:
      updateTo1004();
      goto case 1004;
      break;

   case 1004:
      updateTo1005();
      break;
}
Run Code Online (Sandbox Code Playgroud)

这里我们通过跳转到指定的case块来调用cascade方法.我想知道 - 在这种情况下,使用go(通常被视为这种不良做法!)是一种好习惯吗?我不想一个接一个地调用方法 - 像这样:

updateTo1002()
{
   // do the job
   updateTo1003();
}
updateTo1003()
{
   // do the job
   updateTo1004();
}
Run Code Online (Sandbox Code Playgroud)

有没有设计模式描述这样的问题?

c# design-patterns goto

28
推荐指数
4
解决办法
3378
查看次数

XML vs YAML vs JSON

假设我从头开始一个项目,这不依赖于任何其他项目.我想使用一种格式来存储提要,比如XML,因为XML不是唯一可用的格式,我想知道:为什么我应该选择其中一种?

我将使用perl.

'Feed'是产品的描述(名称,价格,类型,简短描述,最多120个字).

xml perl json yaml

26
推荐指数
7
解决办法
2万
查看次数

std :: stringstream的小数点?

我有一堆整数,我把它放进去了stringstream.现在我想将stringstreams改为strings,同时保持s的恒定精度string.我该怎么办?我知道我可以使用stringstreams.precision(),但由于某些原因它不起作用:

float a = 5.23;
float b = 3.134;
float c = 3.0;

std::stringstream ta;
std::stringstream tb;
std::stringstream tc;

ta << a;
tb << b;
tc << c;

ta.precision(2);
tb.precision(2);
tc.precision(2);

std::string out = "";
out += ta.str() + "\n";
out += tb.str() + "\n";
out += tc.str() + "\n";
Run Code Online (Sandbox Code Playgroud)

会回来5.23\n3.134\n3.0,而不是5.23\n3.13\n3.00

c++ string floating-point stringstream iomanip

26
推荐指数
2
解决办法
5万
查看次数

ItemsControl上的WPF MVVM单选按钮

我以前把枚举绑定到单选按钮,我一般都明白它是如何工作的.我使用了这个问题的替代实现:如何将RadioButtons绑定到枚举?

我想生成一个自定义类型的运行时枚举集,而不是枚举,而是将它们作为一组单选按钮呈现.我已经得到了一个视图,它使用一个运行时枚举的集合ListView,并绑定到ItemsSourceSelectedItem属性,因此我ViewModel可以正确连接.现在我正试图从a切换ListView到a ItemsControl与单选按钮.

就我而言:

<Window.Resources>
    <vm:InstanceToBooleanConverter x:Key="InstanceToBooleanConverter" />
</Window.Resources>

<!-- ... -->

<ItemsControl ItemsSource="{Binding ItemSelections}">
    <ItemsControl.ItemTemplate>
        <DataTemplate DataType="{x:Type vm:ISomeType}">
            <RadioButton Content="{Binding Name}"
                         IsChecked="{Binding Path=SelectedItem, Converter={StaticResource InstanceToBooleanConverter}, ConverterParameter={Binding}}"
                         Grid.Column="0" />
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>
Run Code Online (Sandbox Code Playgroud)

InstanceToBooleanConverter具有与EnumToBooleanConverter其他问题相同的实现.这似乎是正确的,因为它似乎只是调用Equals方法:

public class InstanceToBooleanConverter : IValueConverter
{
    public object Convert(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture)
    {
        return value.Equals(parameter);
    }

    public object ConvertBack(object value, Type targetType, object parameter, System.Globalization.CultureInfo culture) …
Run Code Online (Sandbox Code Playgroud)

wpf mvvm radio-button ivalueconverter

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

AttachConsole(-1),但Console.WriteLine不会输出到父命令提示符?

如果我已经将我的程序设置为a Windows Application,并使用了AttachConsole(-1)API,那么如何Console.WriteLine从我启动应用程序的控制台写入?它不适合我.

如果它是相关的,我使用的是Windows 7 x64,并且我启用了UAC.提升似乎并没有解决问题,也没有使用start /wait.

更新

一些可能有用的其他背景:

我刚刚发现,如果我转到命令提示符并输入cmd /c MyProgram.exe,那么控制台输出就可以了.如果我启动命令提示符,打开cmd.exe子进程并从该子shell运行程序,情况也是如此.

我还尝试注销并重新登录,从开始菜单启动的cmd.exe(而不是右键单击 - >命令提示符)运行,并从console2实例运行.这些都不起作用.

背景

我已经阅读过其他网站和几个SO答案,我可以调用win32 API AttachConsole将我的Windows应用程序绑定到运行我的程序的控制台,所以我可以拥有一个"控制台应用程序和Windows应用程序" .

例如,这个问题:是否可以在C#/ .Net中将消息记录到cmd.exe?.

我已经编写了一堆逻辑来完成这项工作(使用其他几个API),并且我已经让其他所有方案都可以工作(包括重定向,其他人声称这些方案不起作用).剩下的唯一方案是Console.WriteLine写入我启动程序的控制台.从我读过的所有内容中,如果我使用它,它应该可以工作AttachConsole.

摄制

这是一个最小的样本 - 请注意,项目设置为Windows Application:

using System;
using System.ComponentModel;
using System.Runtime.InteropServices;
using System.Windows.Forms;

class Program
{
    [STAThread]
    static void Main(string[] args)
    {
        if (!AttachConsole(-1))
        {
            MessageBox.Show(
                new Win32Exception(Marshal.GetLastWin32Error())
                    .ToString()
                );
        }

        Console.WriteLine("Test");
    } …
Run Code Online (Sandbox Code Playgroud)

.net pinvoke winapi console-application

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

编程两列火车没有位置数据或通信(逻辑谜题)

一架直升机将两列火车降落在直线无限铁路上.

两列火车之间的距离不确定.

每个人都面向同一个方向,着陆时,每辆火车上的降落伞落在火车旁边的地面上并分离.

每列火车都有一个控制其运动的微芯片.芯片是相同的.

火车无法知道它们在哪里.

您需要在芯片中编写代码以使列车相互碰撞.

每行代码都需要一个时钟周期才能执行.

您可以使用以下命令(仅限这些命令):

  • MF - 向前移动火车
  • MB - 向后移动火车
  • IF(P) - 如果列车在降落伞旁边,则满足条件.这个IF声明没有"当时".

puzzle algorithm math

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