小编And*_*erd的帖子

在WPF的菜单中放置一条分隔线

在XAML中,如何在菜单中放置标准分割线?

例如

<MenuItem Header="_File" Name="m_fileMenu">
    <MenuItem Header="_Open" Command="ApplicationCommands.Open"/>
    <!-- Trying to put a divider here! -->
    <MenuItem Header="-" />  <!-- Wrong guess -->
    <MenuItem Header="E_xit" Command="ApplicationCommands.Close" />
</MenuItem>
Run Code Online (Sandbox Code Playgroud)

wpf xaml menu

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

添加HttpClient标头会生成带有一些值的FormatException

这发生在针对Google Cloud Messaging的编码环境中,但适用于其他地方.

考虑以下:

var http = new HttpClient();
http.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("key=XXX");
Run Code Online (Sandbox Code Playgroud)

var http = new HttpClient();
http.DefaultRequestHeaders.Add("Authorization", "key=XXX");
Run Code Online (Sandbox Code Playgroud)

这两个都生成FormatException:

System.FormatException:值key = XXX'的格式无效.

解决方案是删除等号.

  1. 深入研究反射器显示,在添加新的标头值时会运行大量的验证和解析代码.为什么这一切都是必要的?难道这个客户不应该让我们走开吗?

  2. 如何逃避等号以便添加此值成功?

c# dotnet-httpclient google-cloud-messaging

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

如何阻止SQLServer编写无关的东西,例如(1行受影响)

是否有一个命令我可以在我的SQL脚本中运行,以便它停止输出有关每个运行的操作的信息?

即我不想看到这个:

(1 row(s) affected)

(1 row(s) affected)

(1 row(s) affected)
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server

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

WPF ListBox水平放置其项目

我正在尝试编写一个WPF应用程序来显示选择的图像.我希望在窗口顶部的横幅中显示所有可用图像,并在主窗口中显示主要选定图像以供进一步处理.

如果我想要窗口左侧的列表,垂直显示图像,我可以使用数据绑定非常优雅.

    <ListBox 
        Name="m_listBox"
        IsSynchronizedWithCurrentItem="True"
        ItemsSource="{Binding}"            
        >
        <ListBox.ItemTemplate>
            <DataTemplate>
                <Image Source="{Binding}" Width="60" Stretch="Uniform" />
            </DataTemplate>
        </ListBox.ItemTemplate>
    </ListBox>
Run Code Online (Sandbox Code Playgroud)

有一种直截了当的方法,我可以使这个水平而不是垂直?解决方案的主要要求是:

  • 使用数据绑定填充项目
  • 只需用户点击它即可更改所选项目.

data-binding wpf listbox

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

Powershell:引用包含空格的属性

我正在使用powershell导入CSV文件.

问题是,其中一列的标题是"剩余时间 - 小时".所以我得到了一系列对象,它实际上被分配了属性"剩余时间 - 小时".

引用此属性的语法是什么?

例如

Import-Csv AllOpenCases.csv | % {$case = $_ }
$case | get-member
Run Code Online (Sandbox Code Playgroud)

回报

Category               : Inquiry
Starred                : No
Remaining Time - Hours : 22.5
Run Code Online (Sandbox Code Playgroud)

但如果我输入

$case.Remaining Time - Hours
Run Code Online (Sandbox Code Playgroud)

我在表达式或语句中得到"意外的令牌'时间'"

csv powershell

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

在powershell中保存XML文件需要完整的路径.为什么?

我正在使用powershell的XML功能来修改.config文件.除非我提供完整的路径名,否则调用XMLDocument.Save没有任何效果.

# Open the xml file
$config = [xml](get-content web.config)
#
# modify the XML
$config.SelectNodes("./configuration/connectionStrings/add[@name='LocalSqlServer']") | % { $connNode = $_ }
$connNode.connectionString = $connNode.connectionString -replace '^(.*)Server=[^;]+(.*)$', '$1Server=192.168.5.2$2'
#
#
# Now I save it again
#
# This doesn't save it!
$config.Save("web.config");
# However, this works
$config.Save("{0}\\web.config" -f (get-location));
Run Code Online (Sandbox Code Playgroud)

为什么$ config.Save("web.config")不起作用?

除了本地目录以外,我最终还是将它保存在其他地方吗?

xml powershell

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

查找BitmapImage的特定像素颜色

我有一个WPF BitmapImage,我从.JPG文件加载,如下所示:

this.m_image1.Source = new BitmapImage(new Uri(path));
Run Code Online (Sandbox Code Playgroud)

我想查询特定点的颜色.例如,像素(65,32)处的RGB值是多少?

我该怎么做?我采取这种方法:

ImageSource ims = m_image1.Source;
BitmapImage bitmapImage = (BitmapImage)ims;
int height = bitmapImage.PixelHeight;
int width = bitmapImage.PixelWidth;
int nStride = (bitmapImage.PixelWidth * bitmapImage.Format.BitsPerPixel + 7) / 8;
byte[] pixelByteArray = new byte[bitmapImage.PixelHeight * nStride];
bitmapImage.CopyPixels(pixelByteArray, nStride, 0);
Run Code Online (Sandbox Code Playgroud)

虽然我会承认有一些猴子看到,猴子继续这个代码.无论如何,是否有一种直接的方法来处理这个字节数组转换为RGB值?

wpf bitmap image-processing

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

查询运行速度很快,但在存储过程中运行缓慢

我正在使用SQL 2005探查器进行一些测试.

我有一个存储过程,它只运行一个SQL查询.

当我运行存储过程时,它需要很长时间并执行800,000次磁盘读取.

当我对存储过程分开运行相同的查询时,它会执行14,000次磁盘读取.

我发现如果我使用OPTION(重新编译)运行相同的查询,则需要800,000次磁盘读取.

由此,我做出(可能是错误的)假设,即存储过程每次都重新编译,这就是导致问题的原因.

任何人都可以对此有所了解吗?

我已经设置了ARITHABORT.(这解决了stackoverflow上的类似问题,但没有解决我的问题)

这是整个存储过程:

CREATE PROCEDURE [dbo].[GET_IF_SETTLEMENT_ADJUSTMENT_REQUIRED]
 @Contract_ID int,
 @dt_From smalldatetime,
 @dt_To smalldatetime,
 @Last_Run_Date datetime
AS
BEGIN
 DECLARE @rv int


 SELECT @rv = (CASE WHEN EXISTS
 (
  select * from 
  view_contract_version_last_volume_update
  inner join contract_version
  on contract_version.contract_version_id = view_contract_version_last_volume_update.contract_version_id
  where contract_version.contract_id=@Contract_ID
  and volume_date >= @dt_From
  and volume_date < @dt_To
  and last_write_date > @Last_Run_Date
 )
 THEN 1 else 0 end)

 -- Note that we are RETURNING a value rather than SELECTING it.
 -- This means we …
Run Code Online (Sandbox Code Playgroud)

sql-server performance stored-procedures sql-server-2005

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

自动调整Windows窗体控件的大小

我正在使用VS2008的设计师来做这件事.

例如,如果我有一个大小为500x500的Windows窗体,我向它添加了一个DataGridView(490x490).

当我运行这个程序.并且最大化表单,DataGridView仍然保持相同的大小.其余的额外空间在表格上是空白的.我希望DataGridView也占用整个窗口大小.

没有软件会这样.我不知道要改变什么以获得理想的行为.

.net c# winforms

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

Interleaved与LINQ合并?

我正在尝试使用LINQ.假设我有两个相同长度的集合:

var first = new string[] { "1", "2", "3" };
var second = new string[] { "a", "b", "c" };
Run Code Online (Sandbox Code Playgroud)

我想将这两个集合合并为一个,但是以交错的方式.因此,结果序列应为:

"1", "a", "2", "b", "3", "c"
Run Code Online (Sandbox Code Playgroud)

到目前为止,我想出的是一个Zip匿名类型和SelectMany:

var result = first.Zip( second, ( f, s ) => new { F = f, S = s } )
                  .SelectMany( fs => new string[] { fs.F, fs.S } );
Run Code Online (Sandbox Code Playgroud)

有没有人知道用LINQ实现这种交错合并的替代/简单方法?

c# linq

28
推荐指数
4
解决办法
5267
查看次数