小编Hen*_*und的帖子

MVVM Light Toolkit示例

有谁知道使用MVVM Light Toolkit创建的opensource WPF应用程序?或者任何样品?

c# wpf toolkit mvvm mvvm-light

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

HasFlags总是为枚举中的None(0)值返回true

这是枚举定义:

[Flags]
enum Animals
{
    None = 0,
    Dog = 1,
    Cat = 2,
    Horse = 4,
    Zebra = 8,
}
Run Code Online (Sandbox Code Playgroud)

现在,给定以下代码,为什么HasFlag方法对值Animals.None返回true?

Animals myAnimals = Animals.Dog | Animals.Horse;

var hasNone = myAnimals.HasFlag(Animals.None);    //true! Why?
var hasCat = myAnimals.HasFlag(Animals.Cat);      //false
var hasDog = myAnimals.HasFlag(Animals.Dog);      //true
var hasHorse = myAnimals.HasFlag(Animals.Horse);  //true
var hasZebra = myAnimals.HasFlag(Animals.Zebra);  //false
Run Code Online (Sandbox Code Playgroud)

c# enums enum-flags

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

XAML与代码中的不间断空间

这工作正常,并正确地将不间断的空格插入到字符串中:

<TextBlock Text="Non&#160;Breaking&#160;Text&#160;Here"></TextBlock>
Run Code Online (Sandbox Code Playgroud)

但我真正需要的是在数据绑定期间用不间断的空格替换空格.所以我写了一个简单的值转换器,用" &#160;" 替换空格.它确实用" &#160;" 替换空格,但" &#160;"字面显示而不是显示为不间断的空格.这是我的转换器:

public class SpaceToNbspConverter : IValueConverter
{
    #region IValueConverter Members

    public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
    {
        return value.ToString().Replace(" ", "&#160;");
    }

    public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
    {
        throw new NotImplementedException();
    }

    #endregion
}
Run Code Online (Sandbox Code Playgroud)

有人知道它为什么在XAML中工作,但不在代码中吗?

silverlight wpf whitespace xaml silverlight-4.0

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

在IE10页面刷新时,Silverlight应用程序消失

更新:该问题有一个解决方法.通过包含以下元标记之一强制IE10进入兼容模式:

<meta http-equiv="x-ua-compatible" content="IE=7" />
<meta http-equiv="x-ua-compatible" content="IE=8" />
Run Code Online (Sandbox Code Playgroud)

由于各种原因,这不是一个完美的解决方案,但它至少消除了这个问题.


原始问题:
几个月前我意识到在Windows 8上的IE10中我们的Silverlight应用程序存在问题(我还没有尝试过Windows 7的IE10预览版).当托管我们的SL应用程序的asp.net页面首次加载时,一切正常,应用程序按预期加载.如果我立即刷新页面,它也会按预期重新加载.但是:如果我通过点击它来关注Silverlight应用程序然后点击F5,它就会变成空白.这就像插件完全消失了.如果我使用Fiddler跟踪请求,我可以看到没有为xap文件发出请求.我一直希望这可以在IE10的补丁版本中修复,但到目前为止没有任何改变.当我尝试谷歌搜索时,我找不到任何关于此的信息.我不太可能成为第一个发现它的人,我很惊讶我没有找到更多的信息.要重现此问题:

  • 创建一个新的Silverlight应用程序
  • 向MainPage.xaml添加某种内容,如Button或其他任何内容
  • 在IE10中运行应用程序(在Win8上)
  • 单击Silverlight应用程序中的任意位置.这只是为了集中插件.
  • 刷新页面(F5)
  • 结果:Silverlight应用程序未加载且页面为空.

一些观察:

  • 完成上述步骤后,任何数量的刷新都不会使应用程序恢复.
  • 完成上述步骤后,如果我将url重新输入地址栏并按Enter键,则应用程序将按预期加载.
  • 如果我在IE中启用兼容性视图,该应用程序也会按预期加载.在启用兼容性视图时,我所做的任何事情都不会重现该错误.

现在问我的问题:

  1. 还有其他人观察过这种行为吗?
  2. 如果是这样,你找到了解决方法吗?

silverlight internet-explorer refresh windows-8 internet-explorer-10

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

复杂的应用程序可以"单页"多少?

我正在开发一个包含多个子模块的大型应用程序.每个子模块可以具有复杂的功能,具有许多面板和UI组件.我之前作为单页面应用程序完成了较小规模的项目,但这次担心如果用户继续在多个模块上工作,我的DOM将不会长时间刷新.

当我分析Facebook的运作方式时,我发现它大部分时间都是单页应用程序.但是不时地用用户的动作刷新整个DOM(显然它是随机的或基于用户活动计数).

他们是如何在不牺牲DOM性能的情况下创建如单个页面这样的大型应用程序的任何模式或最佳实践?

(我不是在寻找编码技术来保持内存占用率低......但是对于整个应用程序的设计方法)

javascript browser architecture dom single-page-application

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

在Windows 7和Windows 8上IE10(+)是否相同?

我在OS X上开发.为了测试,我使用的是来自http://www.modern.ie/en-us/virtualization-tools#downloads的 Windows VM的VirtualBox

在测试我的Web应用程序时,我应该在Win7 Win8 上的IE10中进行测试,还是我可以安全地假设IE10在两个平台上的行为相同而且只在Win7上进行测试?IE11也是同样的问题.

internet-explorer windows-7 windows-8 internet-explorer-10 internet-explorer-11

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