小编jaw*_*aws的帖子

WPF绑定到代码后面的类成员

很简单的问题,但似乎无法在这里找到完整的答案......

我需要在xaml中将数据绑定到codebehind中的类成员的属性.

<Window x:Class="Main">
    <customcontrol Name="View" IsChecked="{Binding ElementName=RecordProp, Path=IsViewChecked}" />
...
Run Code Online (Sandbox Code Playgroud)

背后的代码如下所示:

class Main 
{    
    ...
    private Record _record;
    public Record RecordProp
    {
      get { return _record; }
    }
    ...
}


class Record
{
  public bool IsViewChecked
  {
    get; set;
  }
}
Run Code Online (Sandbox Code Playgroud)

我现在得到的东西不起作用,我做错了什么?

c# data-binding wpf code-behind

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

如何隐藏Visual Studio中自定义工具生成的文件

我想隐藏我的自定义工具生成的文件,但我找不到任何关于如何完成此操作的文档.

我正在寻找的一个例子是文件背后的WPF代码.这些文件不会显示在Visual Studio项目视图中,而是使用项目进行编译,并在IntelliSense中可用.文件后面的WPF代码(例如,Window1.gics)由自定义工具生成.

c# wpf code-generation customtool visual-studio

28
推荐指数
2
解决办法
9308
查看次数

将XMLDocument写入具有特定换行符的文件(c#)

我有一个我从文件中读到的XMLDocument.该文件是Unicode,并且具有换行符'\n'.当我把XMLDocument写回来时,它有换行符'\ r \n'.

这是代码,非常简单:

XmlTextWriter writer = new XmlTextWriter(indexFile + ".tmp", System.Text.UnicodeEncoding.Unicode);
writer.Formatting = Formatting.Indented;

doc.WriteTo(writer);
writer.Close();
Run Code Online (Sandbox Code Playgroud)

XmlWriterSettings有一个属性NewLineChars,但是我无法在'writer'上指定settings参数,它是只读的.

我可以使用指定的XmlWriterSettings属性创建XmlWriter,但XmlWriter没有格式化属性,导致文件根本没有换行符.

所以,简而言之,我需要编写一个带有换行符'\n'和Formatting.Indented的Unicode Xml文件.思考?

c# xmldocument xmlwriter newline

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

解析复杂的WSDL参数信息

我试图解析WSDL,就像这里给出的例子一样.

作者在评论中指出,该示例无法深入研究复杂的数据类型.

事实上,当我运行该示例时,它似乎甚至不能处理简单的数据类型.

我在示例中使用的System.Web.Services.Description.ServiceDescription类中搜索过,但在运行时找不到任何实际参数或返回类型信息.我认为我可能需要对xsd文件进行一些手动解析?

谷歌和stackoverflow似乎缺乏一个如何以编程方式深入研究复杂类型的完整示例,所以...我应该怎么做?

c# xsd wsdl

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

优化bin-placement算法

好吧,我有两个集合,我需要将collection1中的元素放入collection2的bin(元素)中,这取决于它们的值是否在给定bin的范围内.

举一个具体的例子,假设我有一个排序的集合对象(bin),它们有一个int范围([1 ... 4],[5..10]等).我需要确定int落入的范围,并将其放在适当的bin中.

foreach(element n in collection1) {
 foreach(bin m in collection2) {
  if (m.inRange(n)) {
   m.add(n);
   break;
  }
 }
}
Run Code Online (Sandbox Code Playgroud)

所以有明显的NxM复杂度算法,但我真的很想看到Nxlog(M).为此,我想使用BinarySearch代替内部foreach循环.要使用BinarySearch,我需要实现一个IComparer类来搜索我.我遇到的问题是这种方法需要我制作一个IComparer.Compare函数来比较两种不同类型的对象(一个元素到它的bin),这似乎不可能或不正确.所以我问,我该怎么写这个算法?

c# icomparer

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