小编use*_*746的帖子

将控件的"已启用"属性绑定到变量

我遇到了一些我在一些类似帖子上发现的问题,然而,它们并不完全相同,我不太确定如何将它应用到我的场景中.它们可能与我的情况相同或不同.所以,我希望在这里发布我自己的问题,我将得到我的具体情况的答案.

基本上,我有一个带有一堆控件的窗口表单.我希望能够将其Enabled属性绑定到我设置的布尔变量,以便可以根据我的判断启用或禁用它们.

public partial class MyUI : Form
{
    private int _myID;
    public  int  myID 
    {
        get
        {
            return _myID;;
        }
        set
        {
            if (value!=null)
            {
                _bEnable = true;
            }
        }
    }
    private bool _bEnable = false;
    public bool isEnabled
    {
        get { return _bEnable; }
        set { _bEnable = value; }
    }

    public myUI()
    {
        InitializeComponent();
    }

public void EnableControls()
{
   if (_bEnable)
   {
    ctl1.Enabled = true;
    ctl2.Enabled = true;
            ......
    ctl5.Enabled = true;
   }
       else
   {
    ctl1.Enabled = …
Run Code Online (Sandbox Code Playgroud)

c# winforms

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

Linq可以将一个int列表投射到另一个T类列表中

我有一个int列表,我想知道我是否可以使用Linq基于以前的列表创建另一个对象T列表.

为了简化问题:

我有一个这样的int列表:1,2,3,4我希望有(1,2),(2,4),(3,6),(4,8)

通常,我们可以在没有Linq的情况下轻松完成

public class T
    {
        int first;
        int Second;
        public T(int x, int y)
        {
            first = x;
            Second = y;
        }
    }


class Program
    {
         static void Main(string[] args)
        {
            List<int> series = new List<int>() { 1,2,3,4 };
            List<T> obj = new List<T>();
            foreach (int item in series)
            {
               obj.Add(new T(item,item*2));
            }
        }
    }
Run Code Online (Sandbox Code Playgroud)

这非常有效.但是当我尝试使用Linq时

List<T> obj = series.Select(x=> {new T(x,x*2)}).ToList<T>();
Run Code Online (Sandbox Code Playgroud)

我认为它会起作用,但我说错了

Error   2   The type arguments for method 'System.Linq.Enumerable.Select<TSource,TResult>(System.Collections.Generic.IEnumerable<TSource>, System.Func<TSource,int,TResult>)' cannot be inferred from the …
Run Code Online (Sandbox Code Playgroud)

linq

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

无法找到Nuget包"entityframework"

我是EF的新手,并尝试entityframework从Package Manager控制台进行安装.但我得到这个错误:

PM> install-package entityframework
install-package : Unable to find package 'entityframework'.
At line:1 char:1
+ install-package entityframework
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : NotSpecified: (:) [Install-Package], InvalidOperationException
    + FullyQualifiedErrorId : NuGetCmdletUnhandledException,NuGet.PowerShell.Commands.InstallPackageCommand
Run Code Online (Sandbox Code Playgroud)

不知道为什么我收到此错误.

这是我对Package Source的设置;

在此输入图像描述

Package Source是否设置正确,如果是,安装EF有什么问题?

请指教.

entity-framework nuget

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

这会导致内存泄漏吗?

如果我在公共类中声明这样的静态队列:

public class c
{
  private string[] s={"a","b","c"};
  private static Queue<string> q = new Queue<string>(s);

  static private void SomeMethod()
  {
     private string[] s2 = {"123","345"};
     // somewhere in here I reassign the queue q = new Queue<string>(s2);
  }
}
Run Code Online (Sandbox Code Playgroud)

我的操作会在C#中导致内存泄漏吗?垃圾收集会回收可能未使用的内存吗?

c# memory-leaks

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

在PSCustomObject中打印项目

我想逐行打印自定义对象中的所有项目.我用过的陈述是:

TestObject ([PSCustomObject]@{item1=1 ;item2=2; item3=3},[PSCustomObject]@{item1=4;item2=5;item3=6}) -Verbose
Run Code Online (Sandbox Code Playgroud)

我的功能定义如下:

function TestObject
{
  [CmdLetBinding()]
  Param(
  [parameter(Mandatory=$True]
  [object[]]$objectNames
  )
  Begin{}
  Process
  {
    foreach ($object in $objectNames)
    {
      $myItems =@()
      $myItems += $object
      foreach ($o in $myItems.GetEnumerator())
      {
         Write-Verbose "---------------$o--------------"
         foreach ($i in $o)
         {
           Write-Verbose "Name:$i.Key Value:$i.Value"
         }
      }
      Write-Verbose "$object"
    }
  }
  End{}
}
Run Code Online (Sandbox Code Playgroud)

我期望输出如下:

VERBOSE: ---------------@{item1=1; item2=2; item3=3}--------------
VERBOSE: Name:item1 Value:1
VERBOSE: Name:item2 Value:2
VERBOSE: Name:item3 Value:3
VERBOSE: @{item1=1; item2=2; item3=3}
VERBOSE: ---------------@{item1=4; item2=5; item3=6}--------------
VERBOSE: Name:item1 Value:4
VERBOSE: Name:item2 Value:5
VERBOSE: …
Run Code Online (Sandbox Code Playgroud)

powershell

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

标签 统计

c# ×2

entity-framework ×1

linq ×1

memory-leaks ×1

nuget ×1

powershell ×1

winforms ×1