在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) 这发生在针对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'的格式无效.
解决方案是删除等号.
深入研究反射器显示,在添加新的标头值时会运行大量的验证和解析代码.为什么这一切都是必要的?难道这个客户不应该让我们走开吗?
如何逃避等号以便添加此值成功?
是否有一个命令我可以在我的SQL脚本中运行,以便它停止输出有关每个运行的操作的信息?
即我不想看到这个:
(1 row(s) affected)
(1 row(s) affected)
(1 row(s) affected)
Run Code Online (Sandbox Code Playgroud) 我正在尝试编写一个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)
有一种直截了当的方法,我可以使这个水平而不是垂直?解决方案的主要要求是:
我正在使用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)
我在表达式或语句中得到"意外的令牌'时间'"
我正在使用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")不起作用?
除了本地目录以外,我最终还是将它保存在其他地方吗?
我有一个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值?
我正在使用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) 我正在使用VS2008的设计师来做这件事.
例如,如果我有一个大小为500x500的Windows窗体,我向它添加了一个DataGridView(490x490).
当我运行这个程序.并且最大化表单,DataGridView仍然保持相同的大小.其余的额外空间在表格上是空白的.我希望DataGridView也占用整个窗口大小.
没有软件会这样.我不知道要改变什么以获得理想的行为.
我正在尝试使用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# ×3
wpf ×3
powershell ×2
sql-server ×2
.net ×1
bitmap ×1
csv ×1
data-binding ×1
linq ×1
listbox ×1
menu ×1
performance ×1
t-sql ×1
winforms ×1
xaml ×1
xml ×1