相关疑难解决方法(0)

WPF - DataGrid列,宽度="*",但MinWidth适合内容

使一组DataGrid列具有比例宽度的最佳/正确方法是什么(Width="\*"),但是它们的最小宽度至少是其内容的宽度?目前,如果我使用Width="*",那么列保持完全成比例,但内容如果列太薄,会被裁剪.如果我使用Width="Auto",那么列的大小完全符合它们的内容,但这使它们具有不同的大小.

我想要的实际上是两者的组合,例如Width="\*",MinWidth="Auto"当有额外的宽度时,列将全部空出到相等的宽度,但是当网格变小时,内容永远不会被裁剪.

可悲的是,MinWidth="Auto"不存在,所以我想我需要绑定列的MinWidth属性,但很难弄清楚我将它绑定到什么.

如何告诉WPF "MinWidth="列的最宽内容的宽度?

wpf xaml datagrid width datagridcolumn

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

ThreadPool.QueueUserWorkItem和Parallel.ForEach之间的区别?

以下两种方法之间的主要区别是什么:

ThreadPool.QueueUserWorkItem

    Clients objClient = new Clients();
    List<Clients> objClientList = Clients.GetClientList();

    foreach (var list in objClientList)
    {
        ThreadPool.QueueUserWorkItem(new WaitCallback(SendFilesToClient), list);
    } 
Run Code Online (Sandbox Code Playgroud)

System.Threading.Tasks.Parallel ForEach

    Clients objClient = new Clients();
    List<Clients> objClientList = Clients.GetClientList();

    Parallel.ForEach<Clients>(objClientList, list =>
    {
        SendFilesToClient(list);
    });
Run Code Online (Sandbox Code Playgroud)

我是多线程新手,想知道在每种情况下会发生什么(在执行过程方面)每种方法的多线程水平是多少?帮助我想象这两个过程.

SendFilesToClient:从数据库获取数据,转换为Excel并将Excel文件发送到相应的客户端.

谢谢!

c# multithreading windows-services queueuserworkitem parallel.foreach

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