小编Rre*_*Cat的帖子

用于Windows 8 Metro-UI的控件样式和模板

我遇到了一些关于我的C#/ XAML Metro-UI应用程序的视觉外观的问题.我想自定义默认模板.对于其他类型的应用程序,我可以从MSDN文章中获取默认样式和控件.例如:

在哪里可以找到类似于Metro-UI默认样式和模板的内容?

我知道可以在Expression Blend中提取模板或样式.但是我在下一个帖子中描述了我的Blend for Visual Studio 11的问题.

c# controltemplate microsoft-metro windows-8

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

Windows 8 应用程序的 ViewModel 中的依赖属性与 INotifyPropertyChanged

我创建了空白的 C#/XAML Windows 8 应用程序。添加简单的 XAML 代码:

<Page
    x:Class="Blank.MainPage"
    IsTabStop="false"
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml">

    <Grid Background="{StaticResource ApplicationPageBackgroundThemeBrush}">
        <StackPanel
            Margin="0,150"
            HorizontalAlignment="Center">
            <TextBlock
                x:Name="xTitle"
                Text="{Binding Title, Mode=TwoWay}"/>
            <Button Content="Click me!" Click="OnClick" />
        </StackPanel>
    </Grid>
</Page>
Run Code Online (Sandbox Code Playgroud)

以及 C# 部分的简单代码:

public sealed partial class MainPage
    {
        private readonly ViewModel m_viewModel;

        public MainPage()
        {
            InitializeComponent();
            m_viewModel = new ViewModel
            {
                Title = "Test1"
            };
            DataContext = m_viewModel;
        }

        private void OnClick(object sender, RoutedEventArgs e)
        {
            m_viewModel.Title = "Test2";
        }
    }
Run Code Online (Sandbox Code Playgroud)

现在我想实现ViewModel. 我有两种方法:

  1. 使用依赖属性
  2. 实现 …

c# inotifypropertychanged dependencyobject microsoft-metro windows-8

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

如何在 AWS Step Function 中传递选择状态的不同输出?

假设我的 Step Function 的一部分如下所示:

"ChoiceStateX": {
  "Type": "Choice",
  "Choices": [
    {
      "Variable": "$.value",
      "NumericEquals": 0,
      "Next": "ValueIsZero"
    }
  ],
  "Default": "DefaultState"
},
"ValueIsZero": {
  "Type" : "Task",
  "Resource": "arn:aws:lambda:******:function:Zero",
  "Next": "NextState"
},
"DefaultState": {
  "Type" : "Task",
  "Resource": "arn:aws:lambda:******:function:NotZero",
  "Next": "NextState"
}
Run Code Online (Sandbox Code Playgroud)

假设该状态的输入是:

{
   "value": 0,
   "output1": object1,
   "output2": object2,
}
Run Code Online (Sandbox Code Playgroud)

我的问题是我必须传递output1ValueIsZerostateoutput2DefaultState. 我知道可以改变和InputPath状态。但这种方式对我来说是不可接受的,因为我也从其他一些州打电话给这些州。ValueIsZeroDefaultState

我尝试ChoiceStateX像下面这样修改状态:

"ChoiceStateX": {
  "Type": "Choice",
  "Choices": [
    {
      "Variable": "$.value",
      "NumericEquals": 0,
      "OutputPath": …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-lambda aws-step-functions

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

MSBuild:OutputPath目录为空

我想部署我的ASP.NET MVC站点并具有以下脚本.

<?xml version="1.0" encoding="utf-8"?>
<Project DefaultTargets="Build" ToolsVersion="4" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <Import Project="..\MyProjName\MyProjName.csproj"/>
  <PropertyGroup>
    <NewInstallDir>C:\DeployFolder\</NewInstallDir>
    <BinDir>$(NewInstallDir)bin\</BinDir>
  </PropertyGroup>
  <Target Name="Build">
    <MSBuild Projects="..\MySlnName.sln"
        Properties="Configuration=Release;Platform=Any CPU;OutputPath=$(BinDir)" />
    <Copy SourceFiles="@(Content->'..\MyProjName\%(RelativeDir)%(FileName)%(Extension)')"
        DestinationFiles="@(Content->'$(NewInstallDir)%(RelativeDir)%(FileName)%(Extension)')" />
    <Copy SourceFiles="@(None->'..\MyProjName\%(RelativeDir)%(FileName)%(Extension)')"
        DestinationFiles="@(None->'$(NewInstallDir)%(RelativeDir)%(FileName)%(Extension)')" />
    <MakeDir Directories="@(Folder->'$(NewInstallDir)%(RelativeDir)')" />
  </Target>
</Project>
Run Code Online (Sandbox Code Playgroud)

大意.

我将二进制文件复制到C:\ DeployFolder(从源代码中获取文件夹的结构).我将我的dll构建到C:\ DeployFolder\Bin(我在sources文件夹中没有这个文件夹所以我需要单独复制它).

我运行我的脚本 - 所有工作而不是复制DLL到OutputPath.相同的脚本适用于其他asp.net mvc项目.我不知道在这种情况下有什么问题.

我用解决方法完成了这个问题,但我想知道这个脚本有什么问题.

deployment msbuild

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

F#,赋值运算符与集合运算符

我从F#开始,有些代码结构令我惊讶。例如:

我有下一个代码:

let mutable s = 10
s <- 1 + s
printf "%i" s
Run Code Online (Sandbox Code Playgroud)

从数学的角度来看,一切都是清楚的。我将“ s”标记为可变的,并将新值分配给“ s”。结果是11。

让我尝试代码的其他部分:

let mutable s = 10
s = 1 + s
printf "%i" s
Run Code Online (Sandbox Code Playgroud)

此代码已工作。但是我s = 1 + s从数学角度看这有点奇怪。执行结果为10。

我的问题是,上一个样本中发生了什么?为什么我没有收到错误消息?是s = 1 + s不理?为什么?我的输出没有任何错误。

f#

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

在ASP .Net Core Web应用程序中读取和存储静态查找数据

我有一个Web应用程序(ASP .Net Core 1.1 MVC),它具有一些基本的CRUD操作。该Web应用程序使用Web API进行所有操作。

该Web应用程序具有一些页面供编辑,其中包含基本文本框和下拉列表。一些下拉列表包含静态信息-例如,可能存在具有以下值的查找表:

  1. 日常
  2. 每周
  3. 每月一次
  4. 每年

Web API公开了一个端点来检索这些值。但是,我显然不想每次用户导航到“编辑”页面时都调用此函数。由于这是永远不变的静态数据,因此我想在Web应用程序启动时从API读取一次此查询数据。问题是我不确定执行此操作的最佳位置。我应该将Main()放在Program.cs中,还是放在Startup.cs中的Startup()中?还是应该使用DI来完成(以某种方式...不确定如何发生)。这种情况下有一些最佳做法吗?

然后下一个问题是我应该在哪里存储这些数据?我可以只创建一个包含所有查找表的静态全局变量吗?这是适用于所有用户/会话的数据,所以我认为基本的全局键/值对列表会很好吗?我可以从各种控制器中读取此信息,以在视图中填充下拉列表?

谢谢...只是想以正确的方式做。任何提示将非常感谢。

c# web-applications asp.net-core-mvc

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