小编ser*_*ist的帖子

为什么.NET中没有XML可序列化的字典?

我需要一个XML可序列化的字典.实际上,我现在有两个完全不同的程序需要一个.我很惊讶地看到.NET没有.我在其他地方问了这个问题并得到了讽刺的回应.我不明白为什么这是一个愚蠢的问题.

考虑到各种.NET特性对XML序列化的依赖性,有人可以启发我,为什么没有XML可序列化的字典.希望你也可以解释为什么有些人认为这是一个愚蠢的问题.我想我必须遗漏一些基本的东西,我希望你能填补空白.

.net dictionary xml-serialization appsettings

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

是否可以在XML文件中跨多行拆分字符串?如果是这样,怎么样?

我有一个XML配置文件,其中包含一些非常长的字符串.通常,我格式化我的源文件等,以便可以在不滚动的情况下读取它们.我想对这个配置文件做同样的事情.

有没有办法将字符串分成多行?希望,我要求的是显而易见的,但是一张图片说了千言万语,例如价值,下面.

<add name="validation"
     type="Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF.ValidationElement, Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
Run Code Online (Sandbox Code Playgroud)

如果我打破上面的字符串看起来像这样:

<add name="validation"
     type="Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF.ValidationElement,
     Microsoft.Practices.EnterpriseLibrary.Validation.Integration.WCF, Version=4.1.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" />
Run Code Online (Sandbox Code Playgroud)

我的应用失败了:

"为system.serviceModel/behavior创建配置节处理程序时出错:无法将扩展元素'validation'添加到此元素.验证扩展是否已在system.serviceModel/extensions/behaviorExtensions的扩展集合中注册.参数名称:元素"

它似乎对字符串中的换行符很敏感.

xml app-config

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

Wix Installer - 如何在安装路径中显示[Manufacturer]的值?

我正在尝试使用WiX创建一个带有UI的安装程序.

我的INSTALLFOLDER使用以下设置:

<Directory Id="TARGETDIR"
           Name="SourceDir">
  <Directory Id="ProgramFiles64Folder">
    <Directory Id="ManufacturerFolder"
               Name="[Manufacturer]">
      <Directory Id="INSTALLFOLDER"
                 Name="[ProductName]" />
    </Directory>
  </Directory>
</Directory>
Run Code Online (Sandbox Code Playgroud)

在<Product>部分中,我定义:

<UIRef Id="WixUI_InstallDir" />
<UIRef Id="WixUI_ErrorProgressText" />

<Property Id="WIXUI_INSTALLDIR"
          Value="INSTALLFOLDER" />
Run Code Online (Sandbox Code Playgroud)

当我运行安装程序并进入"目标文件夹"面板时,我看到:

Install Service to: 
C:\Program Files\[Manufacturer]\[ProductName]\
Run Code Online (Sandbox Code Playgroud)

如何让它评估显示的变量?

注意:如果我离开它们,然后单击"下一步","安装并完成"它将起作用.它看起来很糟糕.

wix wix3.7

17
推荐指数
2
解决办法
7241
查看次数

如何切换WPF网格列可见性

我正在努力让这个在我正在研究的WPF应用程序中工作.基本上,我所追求的是像MMC中的任务窗格:

  • 该应用程序在显示屏的主要部分有三列.我需要右侧的一个可调整大小的列.我认为这意味着使用带有GridSplitter的Grid,但任何有效的东西都可以.
  • 我希望能够在关闭应用程序时保存右侧列的宽度,并在应用程序打开时加载它但这应该是初始大小:用户应该能够调整它的大小.
  • 当我调整窗口大小时,我希望左侧和右侧列保持相同的大小,而中间列则根据窗口宽度调整大小.
  • 左侧和右侧列需要具有最小宽度.当我调整右侧列的大小时,我希望中心列变小但不是左侧列.
  • 我还希望能够使用位于列外部的切换按钮切换右侧列的可见性,当它返回到可见性时,我希望它与之前的宽度相同.

我试图在XAML和绑定中尽可能多地做.

我能为它加上奶油,冰淇淋和巧克力片吗?:-)

wpf grid binding gridsplitter togglebutton

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

模态对话框中的模态对话 - 当第二个关闭时关闭 - 为什么?

C#/ .NET 3.5/WinForms

我有一个窗体打开一个模态对话框窗口,打开另一个模态对话框窗体.内部对话框表单有OK和Cancel按钮,其AcceptButton和CancelButton分别设置为它们.

当我按Enter键或在内部对话框中单击"确定"时,外部对话框也会关闭.我无法看到我在做什么 - 这是预期的行为吗?

我可以提供代码,但我不想让它混乱.

.net c# modal-dialog winforms

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

在wpf ListView GridView上设置边距/填充在哪里?

我在XAML中有一个WPF ListView/GridView规范.第一列使用CellTemplate指定图标,其他列使用DisplayMemberBinding填充自己.图标列是20宽,图标16但它们被边距/填充/东西截断.我无法确定它的位置.

这是必需品(我删除了一些列,因为它们是相同的):

<ListView.ItemContainerStyle>
    <Style TargetType="{x:Type ListViewItem}">
        <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
        <Setter Property="FontWeight" Value="Normal" />
        <Style.Triggers>
            <Trigger Property="IsSelected" Value="True">
                <Setter Property="FontWeight" Value="Bold" />
            </Trigger>
        </Style.Triggers>
    </Style>
</ListView.ItemContainerStyle>

<ListView.Resources>
    <DataTemplate x:Key="image">
        <Image Width="16" Height="16" Margin="0,0,0,0"
                          HorizontalAlignment="Center"
                          Source="{Binding Path=ObjectType, 
                                           Converter={StaticResource imageConverter} }" />
    </DataTemplate>
</ListView.Resources>

<ListView.View>
    <GridView>
        <GridViewColumn Width="20"
                        CellTemplate="{StaticResource image}"/>
        <GridViewColumn Width="120" Header="Name"
                        DisplayMemberBinding="{Binding Path=Name}"/>
    </GridView>
</ListView.View>
Run Code Online (Sandbox Code Playgroud)

ImageConverter只是将ObjectType转换为图像,因此每种类型的项都有自己的图标.

wpf listview gridview margin padding

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

.NET和Lotus Notes Interop

我在某个位置有Lotus Notes数据库文件(.nsf),比方说:http://intranet.mycompany.com/somewhere/data.nsf

是否有可能以任何方式使用任何.NET语言从该位置读取?

.net interop lotus-notes interop-domino

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

MVVM中的模型:业务对象还是别的什么?

我正试图掌握MVVM,所以我读了很多文章 - 大多数都集中在View - > ViewModel关系上,并且对于什么是关于什么的一致意见.ViewModel - > Model关系以及构成Model的内容得到的重点较少,并且存在分歧.我很困惑,想要一些帮助.例如,本文将Model描述为业务对象,而本文描述了一个管理业务对象的类.这些都是正确的还是其他的?

silverlight model mvvm

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

如何使用WPF中的Alt键切换主菜单可见性?

我希望我的WPF应用程序中的主菜单的行为类似于IE8中的主菜单:

  • 应用程序启动时它不可见
  • 按下并释放Alt使其可见
  • 再次按下并释放Alt使其再次不可见
  • 重复直到无聊

我怎样才能做到这一点?它必须是代码吗?

添加以回应提交的答案,因为我仍然遇到麻烦:

我的Shell代码隐藏现在看起来像这样:

public partial class Shell : Window
{
    public static readonly DependencyProperty IsMainMenuVisibleProperty;

    static Shell()
    {
        FrameworkPropertyMetadata metadata = new FrameworkPropertyMetadata();
        metadata.DefaultValue = false;

        IsMainMenuVisibleProperty = DependencyProperty.Register(
            "IsMainMenuVisible", typeof(bool), typeof(Shell), metadata);
    }

    public Shell()
    {
        InitializeComponent();

        this.PreviewKeyUp += new KeyEventHandler(Shell_PreviewKeyUp);
    }

    void Shell_PreviewKeyUp(object sender, KeyEventArgs e)
    {
        if (e.SystemKey == Key.LeftAlt || e.SystemKey == Key.RightAlt)
        {
            if (IsMainMenuVisible == true)
                IsMainMenuVisible = false;
            else
                IsMainMenuVisible = true;
        }
    }

    public bool IsMainMenuVisible
    { …
Run Code Online (Sandbox Code Playgroud)

wpf visibility keyboard-shortcuts menu toggle

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

这个存储过程是否是线程安全的?(或SQL Server上的等价物)

在其他人的帮助下,我今天早上敲了几张桌子和存储过程,因为我远离数据库程序员.

有人会介意盯着这个并告诉我它是否是线程安全的吗?我想这可能不是DBA/DB开发人员使用的术语,但我希望你能得到这个想法:基本上,如果这个sp正在执行而另一个同时出现会发生什么?一个人会干扰另一个吗?这甚至是SQL/SP中的一个问题吗?

CREATE PROCEDURE [dbo].[usp_NewTicketNumber]
    @ticketNumber int OUTPUT
AS
BEGIN
    SET NOCOUNT ON;
    INSERT INTO [TEST_Db42].[dbo].[TicketNumber]
               ([CreatedDateTime], [CreatedBy])
         VALUES
                (GETDATE(), SUSER_SNAME())
    SELECT @ticketNumber = IDENT_CURRENT('[dbo].[TicketNumber]');
    RETURN 0;
END
Run Code Online (Sandbox Code Playgroud)

sql t-sql sql-server sql-server-2005 thread-safety

6
推荐指数
2
解决办法
7201
查看次数