小编bar*_*ron的帖子

WPF TextBox的多行

我正在开发一个应用程序来发送一些反馈.

基本上我是想做一个TextBox评论,但我已经习惯了WinForms MultiLine=true.我已经设置MinLines为3,它已经到了那里,但最好是我喜欢它,如果用户能够在这个块中的任何地方输入 - 比如按回车并做点点数的事情.例如:

- Item 1        blah
- Item 2                blahlb lahbvl   d
Run Code Online (Sandbox Code Playgroud)

但目前文本都停留在一行.

- Item 1         blah - Item 2                      blahb blahb blah
Run Code Online (Sandbox Code Playgroud)

这些评论将有助于填写发送的电子邮件的正文.如果在将此字符串放入电子邮件正文字符串时无法轻松保持相同的格式设置(这样看起来就像在键入时一样发送它),这可能毫无意义.

我可以实现我所追求的目标,还是必须将其作为一行中的所有文本保留?

wpf textbox multiline

351
推荐指数
5
解决办法
28万
查看次数

设置wpf应用程序的图标(VS 08)

在进一步说明之前我会提到我在以下方面尝试了解决方案:

如何在visual studio 2008中为我的应用程序设置图标?

从VS 05中的资源设置应用程序图标

我正在尝试为我的应用程序设置一个图标.

AFAIK,我需要3张图片吗?

  • 1图像是单击.exe(exe的缩略图)时资源管理器中的实际图像
  • 左上角有1张图像(微小)(16 x 16?不完全确定)
  • 开始菜单中的1个图像停靠在应用程序的左侧(可能是32x32?再次不确定)

那很好.

现在我选择了一个Icon.如何在上述情况之一中使用它?

我尝试在资源中添加它,似乎没有任何事情发生.在第一个SO解决方案之后,

"首先进入资源视图(从菜单:查看 - >其他窗口 - >资源视图).然后在资源视图中导航资源,如果有的话.如果已经有一个图标类型的资源,由Visual Studio添加,那么打开并编辑它.否则右键单击并选择Add Resource,然后添加一个新图标."

资源视图为空,我无法右键单击此视图.

如果我右键单击解决方案>属性>资源>我可以添加图标图像,但它不会显示在上面列出的任何位置.(或我能看到的任何地方)

1)如何为WPF应用程序设置应用程序图标?

c# wpf resources icons visual-studio-2008

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

如何使用LINQ进行SELECT UNIQUE?

我有一个这样的列表:

Red
Red
Brown
Yellow
Green
Green
Brown
Red
Orange
Run Code Online (Sandbox Code Playgroud)

我试图用LINQ做一个SELECT UNIQUE,即我想要

Red
Brown
Yellow
Green
Orange

var uniqueColors = from dbo in database.MainTable
                   where dbo.Property == true
                   select dbo.Color.Name;
Run Code Online (Sandbox Code Playgroud)

然后我把它改成了

var uniqueColors = from dbo in database.MainTable
                   where dbo.Property == true
                   select dbo.Color.Name.Distinct();
Run Code Online (Sandbox Code Playgroud)

没有成功.第一个select获取所有颜色,那么如何修改它才能获得唯一值?

如果有更好的方法来构建此查询,那么就更乐意走这条路.

我如何编辑它以便我可以使用.OrderBy("列名"),即按字母顺序按颜色名称,所以名称属性?

我不断收到一条消息:

无法从用法推断出类型参数.尝试明确地指定类型参数.

sql linq select unique visual-studio

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

查看整个签入历史记录TFS

一直在互联网上搜索,但很难找到我对这个简单问题的答案.

我使用TFS与VS 2010和所有我想要做的就是查看历史检查只是一个单一的文件.

当我需要使用它时,这很有帮助,但我想要一个更大的历史,所以我可以看到每次检查以及我在旁边放置的评论.

如果我选择解决方案或主项目,无论出于何种原因,我只会获得签到的子集(我假设因为更改不直接影响那些更高级别,但不确定)

tfs visual-studio-2010

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

使用MVC和实体框架实现审核日志/更改历史记录

我正在使用实体框架在更改历史/审核日志中构建我的MVC应用程序.

因此,在编辑方法中public ActionResult Edit(ViewModel vm),我们找到了我们正在尝试更新的对象,然后使用TryUpdateModel(object)将表单中的值转置到我们尝试更新的对象上.

我想在该对象的任何字段更改时记录更改.所以基本上我需要的是在编辑对象之前复制一个对象,然后在TryUpdateModel(object)完成它的工作之后对它进行比较.即

[HttpPost]
public ActionResult Edit(ViewModel vm)
{
    //Need to take the copy here
    var object = EntityFramework.Object.Single(x=>x.ID = vm.ID);

    if (ModelState.IsValid)
    {
        //Form the un edited view model
        var uneditedVM = BuildViewModel(vm.ID); //this line seems to confuse the EntityFramework (BuildViewModel() is used to build the model when originally displaying the form)
        //Compare with old view model
        WriteChanges(uneditedVM, vm);
        ...
        TryUpdateModel(object);
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

但问题是当代码检索"未编辑的虚拟机"时,这会导致EntityFramework中的一些意外更改 - 因此TryUpdateModel(object);抛出一个UpdateException …

c# asp.net-mvc audit entity-framework

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

VisualStudio 2010中哪些空白可见性切换?

我正在寻找Visual Studio 2010中的一个设置(它是在08年我确定它在10)

基本上它可以很容易地看到代码的缩进/间距,因为在白色空间中它会间隔全长停止(显然是不同的颜色),这使得很容易看到代码的缩进.

但我现在无法找到设置我正在尝试重新配置VS 2010中的设置.

有谁知道它在哪里?

whitespace visual-studio-2010

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

正确处理两个WebException

我正在努力处理两种不同WebException的问题.

基本上他们在打电话后处理 WebClient.DownloadFile(string address, string fileName)

AFAIK,到目前为止我必须处理两个,两个WebException:

  • 无法解析远程名称(即没有网络连接访问服务器下载文件)
  • (404)文件不正确(即服务器上不存在该文件)

可能会有更多,但这是我迄今为止发现最重要的内容.

那么我应该如何处理这个问题,因为它们都是,WebException但我想以不同的方式处理每个案例.

这是我到目前为止:

try
{
    using (var client = new WebClient())
    {
        client.DownloadFile("...");
    }
}
catch(InvalidOperationException ioEx)
{
    if (ioEx is WebException)
    {
        if (ioEx.Message.Contains("404")
        {
            //handle 404
        }
        if (ioEx.Message.Contains("remote name could not")
        {
            //handle file doesn't exist
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,我正在检查消息以查看它是什么类型的WebException.我会假设有更好或更精确的方法来做到这一点?

谢谢

c# webclient exception-handling downloadfile webexception

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

单元测试 - 我做得对吗?

基本上我已经编程了一段时间,在完成我的上一个项目之后可以完全理解如果我做完TDD会有多容易.我想我仍然没有严格执行,因为我仍然在编写代码,然后为它编写测试,如果你不知道什么结构以及你的存储数据等,我不太清楚测试在代码之前的变化... 但无论如何...

有点难以解释,但基本上可以说例如我有一个具有id,颜色和成本等属性的Fruit对象.(全部存储在textfile中完全忽略任何数据库逻辑等)

    FruitID FruitName   FruitColor  FruitCost
    1         Apple       Red         1.2
    2         Apple       Green       1.4
    3         Apple       HalfHalf    1.5
Run Code Online (Sandbox Code Playgroud)

这只是一个例子.但是我要说这是这个结构中的Fruit(它是a List<Fruit>)对象的集合.如果水果被删除,我的逻辑会说要重新排序集合中的fruitids(这就是解决方案需要的方式).

例如,如果删除1,则对象2采用水果ID 1,对象3采用水果id2.

现在我想测试我编写的代码进行重新排序等.

如何设置它来进行测试?


这是我到目前为止的地方.基本上我有所有方法的fruitManager类,如deletefruit等.它通常有列表,但我已经改变了hte方法来测试它,以便它接受一个列表,并删除水果上的信息,然后返回列表.

明智的单元测试:我基本上是以正确的方式做到这一点,还是我的想法错了?然后我测试删除不同的有价值的对象/数据集,以确保方法正常工作.


[Test]
public void DeleteFruit()
{
    var fruitList = CreateFruitList();
    var fm = new FruitManager();

    var resultList = fm.DeleteFruitTest("Apple", 2, fruitList);

    //Assert that fruitobject with x properties is not in list ? how
}

private static List<Fruit> CreateFruitList()
{
    //Build test data
    var f01 = new Fruit {Name = "Apple",Id …
Run Code Online (Sandbox Code Playgroud)

c# collections tdd unit-testing

16
推荐指数
2
解决办法
968
查看次数

确定Powershell命令是否成功

嗨,我对Powershell很新,但我有一个琐碎的问题.我希望能够判断命令是否已成功完成,这样我就可以向主机发送有意义的消息.

我正在使用该appcmd命令在IIS中添加绑定.基本上如下:

./appcmd set site /site.name:........................

但是我如何检查以确保它是否成功?

我想如果我只是把Write-Host "Successfully added binding"它放在那个声明之后,无论是否appcmd成功都会触发它.

我猜我需要做的事情如下:

$successful = ./appcmd set site /site.name:........................

$successful似乎是一个包含msg结果的字符串?

感谢任何帮助!干杯

powershell logic appcmd

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

按两个条件排序,字符串升序,int升序

如何根据两个不同的标准进行排序?

例如,我有人物对象,如:

Personwith properties FirstName(string)LastName,和Rank(int).

像这样的示例数据:

Xavier    Smith 1
Alexander Smith 2
Alexander Smith 1
Bob       Hawke 2
Run Code Online (Sandbox Code Playgroud)

它应按字母顺序排序FirstName,然后按排名排序,例如:

Alexander Smith 1
Alexander Smith 2
Bob       Hawke 2
Xavier    Smith 1
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经尝试了以下内容,但它无法正常工作:

peopleListList<Person>

peopleList.Sort(new Comparison<Person>((x,y) => x.Rank.CompareTo(y.Rank)));
peopleList.Sort(new Comparison<Person>((x, y) => string.Compare(x.Name, y.Name)));
Run Code Online (Sandbox Code Playgroud)

谢谢

编辑:为了避免更改我的代码,我真的想保留列表,如果我将上面的行更改为:

peopleList.OrderBy(person => person.FirstName).ThenBy(person => person.Rank).ToList();
Run Code Online (Sandbox Code Playgroud)

会给出完全相同的列表,只是正确排序,对吗?

c# sorting list

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