小编Amo*_*var的帖子

哪个好用:Object.GetType()== typeof(Type)或Object是Type?

我想知道哪个语句在Performance Point of View中是否有用

Object.GetType() == typeof(Type)
Run Code Online (Sandbox Code Playgroud)

要么

Object is Type
Run Code Online (Sandbox Code Playgroud)

c# performance types

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

如何提高RelativeSource FindAncestor的性能?

FindAncestor搜索在窗口的整体视觉树中的元素?

如果是,那么我该如何改进呢?

binding data error,如果我们通过寻找与查找祖先与没有这样的元素存在的元素来访问对象的属性抛出?

如果是,那么我该如何解决这样的错误.

在我的情况下绑定错误抛出输出窗口.为了解决这个错误,我尝试了设置FallbackValue,但现在它给了我警告而不是错误,这是唯一的区别.其他一切都和错误一样.

谁能告诉我究竟是如何FindAncestor运作的?

wpf binding relativesource findancestor

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

谓词不释放内存

如果我在内部包含外部引用,where predicate则内存不会获得释放.

List<object>如果我写where predicate这样的话,我想说我有一个:

    List<object> myList = new List<object>();
    ...
    myList.add(object);
    ...

    Expression<Func<object,bool>> predicate = p => myList.Contains(p);
Run Code Online (Sandbox Code Playgroud)

即使我做了myList = null或者predicate = null,它也没有释放记忆.

我已经List<object> itemsource绑定了DataGrid.我也使它的ItemSource为null,处理DataGrid,DataGrid为null..我还用ANTS Memory Profiler 7.4分析了这个问题.它也告诉我,因为wherepredicate它是持有参考.

如果我改变我wherepredicate像这样dispose(),那么内存得到释放.

    Expression<Func<object,bool>> predicate = p => p.id == 0;
Run Code Online (Sandbox Code Playgroud)

这意味着删除参考WherePredicate.

c# memory datagrid

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

将List <int?>转换为List <int>

假设,我有一个Nullable Integer's&我想要将此列表转换为List<int>仅包含值的列表.

你能帮我解决一下吗?

c# int nullable

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

XmlNodeList上的Any()linq查询

我不能够使用Any()XmlNodeList.我也使用了System.Linq和System.Xml.Linq命名空间.但我仍然没有找到任何这样的扩展方法XmlNodeList.

我该怎么用?

c# xml linq

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

BindingError 会降低应用程序性能吗?

我开发了WPF应用程序。我在其中添加了很多重控制。但现在我正在努力提高应用程序的性能。我分析了一下,发现有很多Binding Data Error's运行在Output Window.

那么,这些错误对应用程序性能的影响也会一样大吗?

c# wpf performance binding

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

在任何布局控件的Children上获取CollectionChanged事件?

如何从任何LayoutControl的Children中获取ItemAdded,ItemRemoved通知?

假设我们有Grid控制权.如果我TextBlock在Grid中添加新控件,那么它应该通过添加的项目通知我.如果删除,那么它应该通知我已经从中移除的项目Children's (UIElementCollection),例如ObservableCollection.

这有可能吗?

c# wpf layout children

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

我可以从 HashCode 获取对象吗?

他们有什么办法可以从哈希码中获取对象吗???

实际上问题是我在我们的应用程序中发现了一些绑定警告,并且每个警告都有相同的源哈希代码。我尝试通过源名称和目标名称进行搜索,但没有找到这样的东西。

所以请帮我找到实际绑定警告即将到来的对象或样式或控制模板?或者帮助我通过其哈希代码找到警告即将到来的对象。

以下绑定警告即将到来。

System.Windows.Media.Animation Warning: 6 : Unable to perform action because the specified Storyboard was never applied to this object for interactive control.; Action='SkipToFill'; Storyboard='System.Windows.Media.Animation.Storyboard'; Storyboard.HashCode='33003048'; Storyboard.Type='System.Windows.Media.Animation.Storyboard'; TargetElement='DevExpress.Xpf.Editors.ErrorControl: DevExpress.Xpf.Grid.GridCellValidationError'; TargetElement.HashCode='56844144'; TargetElement.Type='DevExpress.Xpf.Editors.ErrorControl'
    System.Windows.Media.Animation Warning: 6 : Unable to perform action because the specified Storyboard was never applied to this object for interactive control.; Action='SkipToFill'; Storyboard='System.Windows.Media.Animation.Storyboard'; Storyboard.HashCode='33003048'; Storyboard.Type='System.Windows.Media.Animation.Storyboard'; TargetElement='DevExpress.Xpf.Editors.ErrorControl: DevExpress.Xpf.Grid.GridCellValidationError'; TargetElement.HashCode='64558826'; TargetElement.Type='DevExpress.Xpf.Editors.ErrorControl'
    System.Windows.Media.Animation Warning: 6 : Unable to perform action because the specified Storyboard was never applied to this object …
Run Code Online (Sandbox Code Playgroud)

c# wpf binding hashcode storyboard

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

如果 - 其他更快或?:

哪个在c#中也更快

int a = 10;
bool _IsEven;
if(a%2 == 0)
{
   _IsEven = true;
}
else
{
   _IsEven = false;
}
Run Code Online (Sandbox Code Playgroud)

要么

int a = 10;
bool _IsEven = a%2 == 0 ? true : false;
Run Code Online (Sandbox Code Playgroud)

UPDATE

我知道在这里我可以优化我的代码

bool _IsEven = a%2 == 0;
Run Code Online (Sandbox Code Playgroud)

但我的问题不是关于代码优化,而是关于这两个语句的性能

你能帮助我提高我的编码知识吗?

c# performance if-statement

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