小编esy*_*tre的帖子

IIS WCF服务托管与Windows服务

我们开发了WCF服务,我们正在寻求部署它.我们的客户将使用它,basicHttpBinding但我们的内部团队将使用它namedPipesBinding.

我们想知道在IIS 7或Windows服务中托管它是否更好.我们运行了一些测试,我们发现当我们在IIS中添加绑定时,它不会更新我们服务的配置文件.这意味着我们需要在两个不同的地方维护配置.这不符合逻辑,对吗?

我们还在StackOverflow上读到当WCF服务是IIS中的主机时忽略基址(请参阅有关<baseAddresses>的WCF服务配置文件问题)

.net c# iis wcf was

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

DataGridRow上的WPF DataGrid MouseOver

我无法弄清楚为什么代码的第一部分不起作用,但第二部分是.

第1部分

    <DataGrid.RowStyle>
        <Style TargetType="DataGridRow">
             <Style.Triggers>
                  <Trigger Property="IsMouseOver"
                           Value="True">
                       <Setter Property="Background"
                               Value="Green" />
                  </Trigger>
             </Style.Triggers>
        </Style>
    </DataGrid.RowStyle>
Run Code Online (Sandbox Code Playgroud)

第2部分

    <DataGrid.CellStyle>
        <Style TargetType="DataGridCell">
            <Style.Triggers>
                <Trigger Property="IsMouseOver"
                         Value="True">
                    <Setter Property="Background"
                            Value="Pink" />
                </Trigger>
             </Style.Triggers>
        </Style>
    </DataGrid.CellStyle>
Run Code Online (Sandbox Code Playgroud)

基本上,我想要做的就是在一行上设置MouseOver颜色......

.net wpf xaml datagrid styles

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

在WPF中使用计时器刷新UI(使用BackgroundWorker?)

我们在WPF中有一个应用程序,它通过ObservableCollection显示数据.5分钟后,我想刷新数据.

我以为我可以将System.Timers.Timer对象用于其Elapsed事件,然后调用a BackgroundWorker来调用启动作业的方法.该方法位于ViewModel类上.

但似乎线程存在问题.

所以我尝试了Dispatcher,但同样的事情.

这是我的(简化和未优化)代码:

/// <summary>
/// Initializes a new instance of the <see cref="ApplicationController"/> class.
/// </summary>
public ApplicationController()
{
    CreateDefaultTabs();

    Timer timer = new Timer(20000); //20 secs for testing purpose.
    timer.AutoReset = true;
    timer.Enabled = true;
    timer.Elapsed += new ElapsedEventHandler(OnTimeBeforeRefreshElapsed);
    timer.Start();
}

private void OnTimeBeforeRefreshElapsed(object sender, ElapsedEventArgs e)
{
    Dispatcher.CurrentDispatcher.Invoke(new Action(() => { RefreshData(); }));
    Dispatcher.CurrentDispatcher.Invoke(new Action(() => { UpdateLayout(); }));
}

private void RefreshData()
{
    foreach (object tab in _tabItems) …
Run Code Online (Sandbox Code Playgroud)

c# wpf timer backgroundworker

11
推荐指数
1
解决办法
3万
查看次数

负货币号XAML

我的负货币编号的当前格式有点问题.这是一个截图,恢复了我的情况.

  1. 这就是我在绑定中使用StringFormat的方式.(顺便说一下,我只试过{0:C})
  2. 正如所料
  3. 我的计算机的当前设置为负数货币4.
  4. 我正在运行我的应用程序时的结果

替代文字

为什么结果不是-0,08 $?

关于我应该如何进行的任何想法?

谢谢你的时间.

更新:

我尝试用转换器解决问题,结果如下:

  • 我发现它和Thread.CurrentThread.CurrentUICulture它不一样Thread.CurrentThread.CurrentCulture,所以我在App.xaml.cs中修复了它.不幸的是,结果相同.
  • 我试图通过转换器显示我的值,看看我是否可以调试问题.事实是,在Convert方法的参数中收到的文化是可以的,但它CurrentNegativePattern与在该方法中的不同Thread.CurrentThread.CurrentCulture.这可能就是我遇到这个问题的原因.目前,我将使用这个:return ((double)value).ToString("C2", Thread.CurrentThread.CurrentCulture);Convert我的转换器的方法.

c# wpf currency string-formatting

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

使用Baml管理本地化

我正在WPF中开发一个小应用程序,我想本地化我的资源。我一直使用资源文件(.resx),但听说BAML可能会改变WPF应用程序中的本地化管理方式。

我进行了研究,发现了一种使用这些文件来翻译应用程序的方法。

我写了一篇博客文章来展示我是如何在这里做的(仅法语,对不起)。您可以在文章末尾看到有关英文链接的参考。

事实是,我真的不喜欢这种管理资源的方式。我认为这要复杂得多,我看不到使用此方法的优点。

我是对的还是对BAML有误解?

谢谢。

c# wpf localization baml locbaml

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

棱镜:更改活动视图

我有一个类似于Windows控制面板的小工具.该工具允许我们管理用户,配置数据库,管理脚本等.主页显示应用程序的所有子类别.单击链接时,它会在右侧面板中加载此类别的视图,左侧小面板显示此类别可用的任务.简单.

基本上,我想要做的是拥有一个"上下文"状态栏.如果您处于需要连接的视图中,状态栏应显示状态.如果您在应该显示信息的视图中,我希望它在我的状态栏中.

我已经在我的shell中为状态栏添加了一个Region名为StatusBarRegion.对于每个模块,我在shell的区域中注册了该模块的StatusBarView.

现在,我想处理上下文的变化.我需要在适当的时候激活好视图.

但每次我尝试解析StatusBarRegion时,都无法在区域管理器的区域中找到它.

看到,

var region = _regionManager.Regions[.RegionNames.StatusBarRegion];
region.Activate(_container.Resolve<StatusBarView>());
Run Code Online (Sandbox Code Playgroud)

该区域始终为空.为什么 ?

谢谢你的时间.

c# wpf prism region

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