小编Cri*_*onX的帖子

IntelliJ 13 - 添加导航后退/前进到工具栏?

Jetbrains更改了IntelliJ 13中的工具栏.

此处显示的"导航后退和前进"箭头位于顶部工具栏中,可轻松点击.

后退前进 现在,我可以找到访问这些字段的唯一方法是转到导航 - >后退或导航 - >前进.

有没有人知道如何将这些后退/前进位置添加到一个始终可见的工具栏中,就像它们位于IntelliJ 12中一样?

navigation ide toolbar intellij-idea

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

如何在ComboBoxItem的内容中包含&符号(&)

我目前有一个类似下面的Combobox:

//XAML
<ComboBox>
<ComboBoxItem> Awake & Alive</ComboBoxItem>
</ComboBox>
Run Code Online (Sandbox Code Playgroud)

这会引发错误:以&符号'&'开头的实体引用或序列必须以分号';'结束.

我假设我错过了某种转义序列,允许我使用&.如何设置此组合框的内容以包含&?谢谢

xaml escaping

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

是否有与Android Native Layouts相同的DOM检查器?

在使用CSS和javascript开发HTML5网页时,我发现了像DOM Developer Tools这样的DOM检查员 在根目录中非常有用,导致哪些CSS样式应用于网页上的哪些HTML5元素.界面允许您查看左侧的实际布局以及DOM,此时动态地将CSS应用于页面.

我的问题是 - 是否存在与Android应用程序类似的任何工具?有没有办法确定哪些xml样式应用于活动或应用程序中的哪些元素?这对于在应用程序中查看"default" styles.xml特别有用.

有没有人有任何建议的工具来帮助确定哪些样式应用于活动中的每个元素?

android android-layout google-chrome-devtools

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

如何将二进制数据嵌入/链接到Windows模块

所以我有一个Visual Studio 2008项目,它有大量当前引用的二进制数据.我希望通过将二进制数据作为"资源"添加并将其编译为DLL来打包二进制数据,就像使用C#一样.

让我们说我的所有数据都有".data"的扩展名,目前正在从visual studio项目中读取.

有没有办法可以将数据编译或链接到它正在调用的.dll中?

我已经查看了一些google链接,到目前为止我还没有想出任何东西 - 我提出的唯一可能的解决方案是使用类似ResGen的东西来创建.resources文件然后链接它使用带有/ Embed或/ Link标志的AssemblyLinker.我不认为它工作正常,因为我没有文本文件来创建.resources文件,而是二进制文件本身.

有什么建议?

c++ windows embed linker binary-data

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

浮点算法 - 双类型的模算子

所以我试图弄清楚为什么模运算符返回如此大的异常值.

如果我有代码:

double result = 1.0d % 0.1d;

它会给出一个结果0.09999999999999995.我期望值的价值0

注意使用除法运算符不存在此问题 - double result = 1.0d / 0.1d;

将给出结果10.0,意味着剩下的应该0.

让我明确一点:对于存在错误我并不感到惊讶,我很惊讶这个错误与游戏中的数字相比非常.0.0999~ = 0.1和0.1处于相同数量级0.1d并且仅相差一个数量级1.0d.它不像你可以将它与double.epsilon相比,或者说"如果它的<0.00001差异则相等".

我已经在StackOverflow上阅读了这个主题,在下面的帖子中 三个,其中包括.

任何人都可以建议解释为什么这个错误如此之大?任何建议,以避免将来遇到问题(我知道我可以使用十进制,但我担心它的性能).

编辑:我应该特别指出,我知道0.1是一个无限重复的二进制数字系列 - 这与它有什么关系吗?

c# floating-point precision

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

如何使用C#.NET中的#region/#endregion(大纲)等效组织xml数据

我想使用预处理器命令(例如C#/ .NET中的#region/#endregion命令)将我的XML数据组织成可折叠和可扩展的.我正在编辑此文件Visual Studio 2008.

有这样的能力吗?我用谷歌搜索无济于事.我到目前为止最接近的是扩展和折叠标签本身,所以我可以在它们之间崩溃

<Data> 
(this is collapsed)
</Data>
Run Code Online (Sandbox Code Playgroud)

c# xml region visual-studio-2008

9
推荐指数
2
解决办法
8876
查看次数

设计问题 - 继承是简化此代码的正确方法吗?

我有一个我想解决的设计问题.我有一个接口,让我们调用它IProtocol,它由两个单独的类实现.我们在这里查看600多行代码.他们所做的绝大多数事情是相同的,除了一些特定的领域,比如DiffStuff();

目前的结构是这样的:

public class Protocol1 : IProtocol
{
  MyInterfaceMethod1()
  {
     Same1();
     DiffStuff();
     Same2();
  }
}
Run Code Online (Sandbox Code Playgroud)

public class Protocol2 : IProtocol
{
  MyInterfaceMethod1()
  {
     Same1();
     Same2();
  }
}
Run Code Online (Sandbox Code Playgroud)

如果我将两个协议分开,我关心的是复制粘贴错误和代码重复的经典问题.我们讨论的是每行600行代码,而不是一些简单的方法.

我正在考虑将Protocol1的实现改为继承自protocol2,就像这样(Protocol2基本上保持不变,除了我必须包装Same1()Same2()进入私有方法.)

public class Protocol1 : Protocol2
{
  void Same1()
  {
     base.Same1();
  }

  void Same2()
  {
     base.Same2();
  }

  MyInterfaceMethod1()
  {
     Same1();
     DiffStuff();
     Same2();
  }
}  
Run Code Online (Sandbox Code Playgroud)

这是处理这个问题的正确方法吗?

编辑: 很多人帮助我解决了这个问题,感谢您的明确理解.在我的例子中,两个对象的类型不同,即使它们的大部分实现都是共享的,所以我采用了Bobby的建议来使用抽象基类,创建小方法来封装类之间的变化.另外感谢:

  • jloubert
  • 汉斯帕斯特
  • 杰夫索姆

c# inheritance design-patterns

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

如何创建一个可以返回double或decimal的通用C#方法?

我有这样的方法:

private static double ComputePercentage(ushort level, ushort capacity)
{
      double percentage;
      if(capacity == 1)
        percentage = 1;

      // do calculations...
      return percentage;
}
Run Code Online (Sandbox Code Playgroud)

是否有可能使它成为像"类型T"这样的泛型类型,它可以返回十进制或双精度,具体取决于预期的方法类型(或放入函数的类型?)

我试过这样的东西,但是我无法让它工作,因为我不能将类似"1"的数字分配给泛型类型.我也尝试过使用"where T:" ushort capacity)但我还是想不出来.

private static T ComputePercentage<T>(ushort level, ushort capacity)
{
      T percentage;
      if(capacity == 1)
        percentage = 1; // error here

      // do calculations...
      return percentage;
}
Run Code Online (Sandbox Code Playgroud)

这甚至可能吗?我不确定,但我认为这篇文章可能暗示我正在尝试做的事情根本不可能.


编辑

感谢所有回复的人,许多好的答案.正如Tomas指出的那样,这可能最好用两种不同的方法完成.正如TreDubZeddTcKs所指出的,获得我想要的功能的最好方法是使用隐式转换,它可以隐式返回double或decimal.

c# generics implicit

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

为什么Window.FindName()没有发现x:子UserCStrol中按钮的名称?AKA NameScopes如何运作?

因此,在下面的示例代码中,我创建了一个UserControl UserControldChild,它是主窗口Window1.xaml的子代.为什么该FindName()方法无法在下面的代码中找到"myButton"?

这必须与WPF XAML NameScopes有关,但我还没有找到关于NameScope如何工作的好解释.有人可以开导我吗?

//(xml) Window1.xaml    
<Window x:Class="VisualTreeTestApplication.Window1"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    xmlns:VisualTreeTestApp="clr-namespace:VisualTreeTestApplication"
    Title="Window1" Height="400" Width="400">
    <Grid>
        <VisualTreeTestApp:UserControlChild/>
    </Grid>
</Window>

//(c#) Window1.xaml.cs
namespace VisualTreeTestApplication
{
  /// <summary>
  /// Interaction logic for Window1.xaml
  /// </summary>
  public partial class Window1 : Window
  {
    public Window1()
    {
      InitializeComponent();
      Button btnTest = (Button)Application.Current.MainWindow.FindName("myButton");
      // btnTest is null!
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

UserControl如下:

//(wpf) UserControlChild.xaml
<UserControl x:Class="VisualTreeTestApplication.UserControlChild"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
    Height="300" Width="300">
    <Grid x:Name="myGrid">      
        <Button x:Name="myButton" Margin="20" >Button</Button>
    </Grid>
</UserControl>

//(c#) UserControlChild.xaml.cs (no changes) …
Run Code Online (Sandbox Code Playgroud)

c# wpf user-controls findname

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

将Android NumberPicker限制为数字键盘以进行数字输入(不是Alpha键盘)

有没有办法在选择NumberPicker时建议或限制键盘输入,因此在输入值时只显示数字控件,类似于如何使用android:inputType="number"EditText?

我有一系列值,从0.0到100.0,增量为0.1,我希望能够在Android 4.3中使用NumberPicker进行选择.为了使数字可选,我创建了一个与这些值对应的字符串数组,如下所示:

    NumberPicker np = (NumberPicker) rootView.findViewById(R.id.programmingNumberPicker);        
    int numberOfIntensityOptions = 1001;

    BigDecimal[] intensityDecimals = new BigDecimal[numberOfIntensityOptions];
    for(int i = 0; i < intensityDecimals.length; i++ )
    {
        // Gets exact representations of 0.1, 0.2, 0.3 ... 99.9, 100.0
        intensityDecimals[i]  = BigDecimal.valueOf(i).divide(BigDecimal.TEN);
    }

    intensityStrings = new String[numberOfIntensityOptions];
    for(int i = 0; i < intensityDecimals.length; i ++)
    {
        intensityStrings[i] = intensityDecimals[i].toString();
    }

    // this will allow a user to select numbers, and bring up a full keyboard. Alphabetic keys are …
Run Code Online (Sandbox Code Playgroud)

android android-softkeyboard numberpicker

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