小编Dav*_*ave的帖子

合并ResourceDictionary与App.xaml

我正在阅读有关ResourceDictionary的内容,并且已经陷入了困惑.

看来我每个XAML只能有1个ResourceDictionary.所以,如果我想使用多个,我可以合并ResourceDictionaries.

如果我可以合并词典那么"全球"风格应该在哪里生活?我可以拥有一个ApplicationResourceDictionary,其中包含在我的应用程序中保持一致的所有样式,或者我可以将此信息保存到App.xaml文件中.两者似乎都是有效的选项,但我不知道是否是这种情况.

这是关于个人选择还是比另一个更好?看起来将它们保存在ResourceDictionaries中会更好,因为所有样式都在一起(在字典中)而不是在XAML页面中拆分一些.

xaml resourcedictionary

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

在 DataContext 中使用时无法删除文件

我的应用程序在屏幕上显示图像(基于本地计算机上的文件的图像),用户可以根据需要删除它们。

每次我尝试删除文件时,都会出现以下错误消息:

"The process cannot access the file 'C:\\Users\\Dave\\Desktop\\Duplicate\\Swim.JPG' because it is being used by another process."
Run Code Online (Sandbox Code Playgroud)

我理解错误消息。

我有一个UserControl接受文件路径(通过构造函数中的参数),然后将其绑定到它的 (UserControl) DataContext

作为调试此问题的一部分,我发现问题是由于在 UserControl 中设置 DataContext 造成的。如果我this.DataContext = this;从用户控件中删除,那么我可以删除该文件。

所以,我的测试单元看起来像

        Ui.UserControls.ImageControl ic = new ImageControl(
           @"C:\Users\Dave\Desktop\Duplicate\Swim.JPG");

        try
        {
            File.Delete(@"C:\Users\Dave\Desktop\Duplicate\Swim.JPG");
        }
        catch (Exception ex)
        {
            Assert.Fail(ex.Message);
        }
Run Code Online (Sandbox Code Playgroud)

用户控制代码隐藏

    public ImageControl(string path)
    {
        this.FilePath = path;
        this.DataContext = this; // removing this line allows me to delete the file!
        InitializeComponent();
    }

    #region Properties

    private string _filePath;
    public string …
Run Code Online (Sandbox Code Playgroud)

c# wpf user-controls

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

单身 - 我可以创建多个实例

我认为单身人士的观点是我一次只能初始化一个实例?如果这是正确的,那么我必须在我的C#控制台应用程序代码中出错(见下文).

如果我对单身人士的理解是正确的,或者我的代码中有错误,请有人告诉我.

using System;
using System.Collections.Generic;
using System.Text;

namespace TestSingleton
{
    class Program
    {
        static void Main(string[] args)
        {
            Singleton t = Singleton.Instance;
            t.MyProperty = "Hi";

            Singleton t2 = Singleton.Instance;
            t2.MyProperty = "Hello";

            if (t.MyProperty != "")
                Console.WriteLine("No");

            if (t2.MyProperty != "")
                Console.WriteLine("No 2");

            Console.ReadKey();
        }
    }

    public sealed class Singleton
    {
        private static readonly Singleton instance = new Singleton();

        public string MyProperty { get; set; }

        private Singleton()
        {}

        static Singleton()
        { }

        public static Singleton Instance { get …
Run Code Online (Sandbox Code Playgroud)

c# singleton design-patterns

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

WP8 SDK - 什么是新的?

我不在,因此,无法使用Visual Studio访问PC,但我很想知道新的WP8 SDK.特别是2个方面.

现在WP7 SDK非常有限(查看投诉论坛),我想知道是否有人可以回答两个问题因为我不耐烦等到我回来了.

  1. SDK是否让我控制手机音量?
    一个.我想制作一个应用程序,根据一天中的时间和我的前景日历状态将手机变为静音(例如,如果我正在参加会议,请不要响铃).WP7无法实现这一点

  2. 我可以在没有用户控制的情况下发送短信(例如,作为后台任务).一个.在WP7上,您可以安排消息,但用户必须仍然单击发送按钮.

或者,是否有人知道"WP8 SDK中的新功能",他们也能指出我的意思?目前我在谷歌上找不到任何东西(如果存在这样的话).

windows-phone-8

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

无法将页面添加到我的项目中

我在Visual Studio中的一个项目是WPF项目.

我有创建的默认文件加上我添加的2个类和几个文件夹.

在此输入图像描述

我的问题是,当我尝试将一个Window添加到我的View文件夹时,我不能因为我没有Window(或页面)的选项.

在此输入图像描述

正如您所看到的,出于某种原因,尽管我的应用程序被创建为WPF项目,但它现在认为它是一个WinForms项目.

如何将其从WinForms还原/更改为WPF项目?


编辑
请注意,我使用的是Visual Studio 2012 Premium.

如果我添加一个新的WPF项目,我会得到Page/Window等选项,所以这个错误是项目特定的.

根据评论,这是我点击添加新项目时得到的屏幕(抱歉,我不能放在整个列表中)

在此输入图像描述

这是WPF菜单的视图

在此输入图像描述

wpf winforms visual-studio-2012

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

MailMessage Bcc AddRange的扩展方法

将多个收件人添加到a时MailMessage.BCC,没有选项AddRange().只要MailMessage.Bcc.Add();

可以通过扩展方法更改此功能吗?在这一点上我有点失落,任何指针都会非常感激.

c# extension-methods system.net.mail

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

比较2个FileAttributes必须始终在C#中返回true

我最近在stackoverflow上得到了一些很好的帮助.其中一个答案让我感到困惑,由于评论框的限制,我觉得不适合得到解释.

请查看以下代码.

if ((File.GetAttributes(fileName) & FileAttributes.Archive) == FileAttributes.Archive)
{
    // Archive file.
}
Run Code Online (Sandbox Code Playgroud)

我的问题是为什么你会在&之后包含逻辑(参见粗体)
(File.GetAttributes(fileName)&FileAttributes.Archive)==等

肯定FileAttributes.Archive == FileAttributes.Archive将始终匹配?

有没有人对此有解释(国际海事组织这可能是一个错字/错误,但我以前假设太多东西,以后才能纠正!)

第二个问题是~代码在此代码中的作用:

File.SetAttributes(fileName, File.GetAttributes(fileName) & ~FileAttributes.Archive);
Run Code Online (Sandbox Code Playgroud)

c# file

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

ForEach和foreach

我正在尝试在C#中向MailAddress添加多个字符串.

如果我要使用ForEach,我的代码看起来像

        foreach (var item in GetPeopleList())
        {
            m.Bcc.Add(new MailAddress(item.EmailAddress));
        }
Run Code Online (Sandbox Code Playgroud)

我现在正试图用我的foreach(即List.ForEach())来做这件事而我不能.

 public class Person
    {
        public Person(string firstName, string lastName, string emailAddress)
        {
            FirstName = firstName;
            LastName = lastName;
            EmailAddress = emailAddress;
        }

        public string FirstName { get; set; }
        public string LastName { get; set; }
        public string EmailAddress { get; set; }
    }

        static void Main(string[] args)
        {
            MailMessage m = new MailMessage();
            List<Person> people = GetPeopleList();

            m.Bcc.Add(people.ForEach(Person people =>
                {
                    //what goes …
Run Code Online (Sandbox Code Playgroud)

c# foreach

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

SQL不通过EF保存DateTime的时间

我正在使用EF来保存日期时间.

日期正在保存到数据库,但不是时间.我正在使用这种date类型.但是,SSMS(2012 express)字段仅显示dd/MM/yyyy(没有时间)

读它回来就是这样的 26/07/2014 00:00:00

我假设它显示00:00:00,因为这是它被保存的方式(尽管没有显示).

要保存条目,我只是将DateTime分配给我的属性.

myEfModel.Date = DateTime.Now;
Run Code Online (Sandbox Code Playgroud)

我也尝试过(确保数字的位数不会使保存中的SQL混乱)

var timeNow = DateTime.Now;
timeNow.AddMilliseconds(-timeNow.Millisecond);
myEfModel.Date LastUsed = timeNow;
Run Code Online (Sandbox Code Playgroud)

搜索SO显示大多数人声称 they have no problems saving DateTime.Now via EF

为什么不节省时间?

c# sql datetime entity-framework

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

为什么我的数据库不能用EF保存?

我正在使用EF来更新我的数据库.

我首先根据一些标准查询数据库.这将返回我期望的记录(或返回null).自然地,在此查询期间,执行查询时会有轻微的延迟.

然后,我将属性中的属性从false更改为true,或者创建一个新条目.

然后我将这个对象添加到我的实体中,最后选择myEntitiy.SaveChanges().这似乎没有执行.没有延迟.然而代码传递到下一行,因此不会抛出任何异常.

这就是我所拥有的

public class MyCompany : AbstractCompany
{
    public override bool UpdateStatus(string emailAddress, bool isOptIn)
    {
        var personDetail = (from a in base.Entities.MyCompanyTable
                            where a.EmailAddress == emailAddress
                            select a).SingleOrDefault();

        if (personDetail == null)
        {
            personDetail = new MyCompanyTable();
            personDetail.EmailAddress = emailAddress;
        }

        personDetail.IsSubscribed = isOptIn;

        base.Entities.MyCompanyTable.Add(personDetail); //also tried attach, same issue over
        return base.SaveData();
    }
}
Run Code Online (Sandbox Code Playgroud)

我的基础是

    public abstract bool UpdateStatus(string emailAddress, bool isOptIn);

    protected Entities Entities
    {
        get { return new Entities(); }
    }



    protected bool …
Run Code Online (Sandbox Code Playgroud)

c# entity-framework

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