小编Rob*_*ert的帖子

使用LINQ删除字典中的重复项以及这些重复项的计数

我有一些代码返回我的字典中的唯一元素,但我还想返回重复元素的计数.基本上将字典[key,uniqueelement]更改为字典[uniqueelement,count].这是我的代码,只返回唯一元素.

var uniqueItems = deviceInstances.Children.GroupBy(pair => pair.Value.Information.UnderlyingDeviceType)
                  .Select(group => group.First())
                  .ToDictionary(pair => pair.Key, pair => pair.Value.Information.UnderlyingDeviceType.ToString());
Run Code Online (Sandbox Code Playgroud)

c# linq

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

从byte*转换为byte []

如何将指针转换为字节数组?

第一个字节表示要遵循的字节数.

c#

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

用TextBox创建MessageBox

如何在其中创建一个带有两个文本框的消息框,以便用户可以输入我可以保存的信息?

c# wpf

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

接口中的通用事件Args

我试图在一个通用的EventArgs类中保存一个对象,但由于EventHandler有一个接口,我很难完成这个.有什么办法让这样的工作吗?

我的EventArgs类:

public class PositionChangedEventArgs<T>
{
   public PositionChangedEventArgs(byte position, T deviceArgs)
   {
       Position = position;
       DeviceArgs = deviceArgs;
   }

   public byte Position { get; private set; }
   public T DeviceArgs { get; private set; }
}
Run Code Online (Sandbox Code Playgroud)

正在使用的接口:

public interface IMoveable
{
    event EventHandler<PositionChangedEventArgs<T>> PositionChanged;
}
Run Code Online (Sandbox Code Playgroud)

示例类用法:

public class SomeDevice : IMoveable
{
   public event EventHandler<PositionChangedEventArgs<DeviceSpecificEventMessageArgs>> PositionChanged; //Compiler doesn't like this
}
Run Code Online (Sandbox Code Playgroud)

c# generics c#-4.0

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

将对象绑定到WPF TreeView

我想知道如何将自定义数据类型绑定到TreeView.

数据类型基本上是包含其他arraylists的对象的arraylist.访问将看起来像这样:

foreach (DeviceGroup dg in system.deviceGroups)
    {
        foreach (DeviceType dt in dg.deviceTypes)
        {
            foreach (DeviceInstance di in dt.deviceInstances)
            {

            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

我希望TreeView看起来像这样:

DeviceGroup1

 --> DeviceType1
      --DeviceInstance1
      --DeviceInstance2
 --> DeviceType2
      --DeviceInstance1
Run Code Online (Sandbox Code Playgroud)

DeviceGroup2

 --> DeviceType1
      --DeviceInstance1
 --> DeviceType2
Run Code Online (Sandbox Code Playgroud)

c# data-binding wpf treeview

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

基于动态资源的风格

似乎不允许这样的事情。任何解决方法?

  <Style x:Key=MyDerivedStyle TargetType="{x:Type Button}"
         BasedOn="{DynamicResource GlobalButtonStyle}" />       

  <Style x:Key="GlobalLabelStyle" TargetType="{x:Type Button}">
Run Code Online (Sandbox Code Playgroud)

我收到错误消息:无法在“样式”类型的“BasedOn”属性上设置“DynamicResourceExtension”。只能在 DependencyObject 的 DependencyProperty 上设置“DynamicResourceExtension”。

如果我将其更改为 StaticResource,则该样式不会出现在我的控件中。

c# wpf

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

获取属性名称

有没有办法获取传递给函数的值的属性名称?

c#

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

从列表<T>获取项目并更新该项目的属性

我有一个Person类型的列表,我想基于DisplayName更新DisplayValue.我怎么能做到这一点?

public class Person
{
     public string DisplayName { get; set; }
     public string DisplayValue { get; set; }
     ... other properties
}
Run Code Online (Sandbox Code Playgroud)

c#

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

重启正在运行的功能

我有一个函数调用每个对象的测试.如果当前测试失败,我希望能够重新测试.

        foreach (TestObject test in Tests)
        {
              test.RunTest()
        }
        //This is in the TestObject class
        RunTest()
        {
             if (failure)
             {
                 //Want to be able to run RunTest() again without interrupting the foreach loop.
             }
        }
Run Code Online (Sandbox Code Playgroud)

c# c#-4.0

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

如何处理不返回的函数

我有一个名为ApiCalls()的函数,它包含在一个锁定器中,因为我使用的api不是多线程安全的.偶尔api调用无法返回,我想不出办法处理这种情况.我正在考虑在锁定对象上创建一个计时器,但似乎锁定器没有这样的东西.

c#

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

麦克风输入

有没有办法在c#中获取麦克风输入事件?我想显示一个随语音级别上下的进度条.

c#

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

标签 统计

c# ×11

wpf ×3

c#-4.0 ×2

data-binding ×1

generics ×1

linq ×1

treeview ×1