小编Kla*_*urn的帖子

在WrapPanel中同步WPF控件宽度

我有这个案子

<WrapPanel>
    <CheckBox>Really long name</CheckBox>
    <CheckBox>Short</CheckBox>
    <CheckBox>Longer again</CheckBox>
    <CheckBox>Foo</CheckBox>
    <Slider MinWidth="200" />
</WrapPanel>
Run Code Online (Sandbox Code Playgroud)

我希望WrapPanel内的所有CheckBox都是相同的宽度.

添加以下内容几乎可以实现所需的效果

<WrapPanel.Resources>
    <Style TargetType="CheckBox" BasedOn="{StaticResource {x:Type CheckBox}}">
        <Setter Property="MinWidth" Value="75" />
    </Style>
</WrapPanel.Resources>
Run Code Online (Sandbox Code Playgroud)

但是,我不想硬编码特定的宽度,而是让最大的CheckBox设置宽度(如果任何宽度> 75,上面也会失败).

Slider是独立的,应该允许比CheckBox更大.

我不想使用网格(使用IsSharedSizeScope),因为我不想要硬编码的列数.

本文提供了一个有趣的解决方案,但如果不创建自定义控件或使用C#代码就可以解决问题.

最好的方法是什么,最好只在XAML中使用?

wpf layout xaml wrappanel itemscontrol

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

Angular ng-grid editableCellTemplate抛出异常

我正在尝试editableCellTemplate在ng-grid中设置ColumnDef选项(此处记录).

当我设置它时,即使是默认值<input ng-class="'colt' + col.index" ng-input="COL_FIELD" />,单击一个单元格会立即显示错误

错误:没有控制器:ngModel处getControllers(错误()http://foo.com:43037/Scripts/angular.js:4232:19在nodeLinkFn)(http://foo.com:43037/Scripts/angular. js:4361:35)在compositeLinkFn(http://foo.com:43037/Scripts/angular.js:3969:15)的compositeLinkFn(http://foo.com:43037/Scripts/angular.js:3972: 13)at object的publicLinkFn(http://foo.com:43037/Scripts/angular.js:3874:30).(http://foo.com:43037/Scripts/ng-grid-2.0.7.js:2660:13)在Object.Scope的Object.applyFunction [as fn](​​:778:50).$ digest(http ://foo.com:43037/Scripts/angular.js:7896:27)at Object.$ delegate.proto.$ digest(:844:31)<input ng-class ="'colt'+ col.index"ng-input ="row.entity.Name">

如果我没有设置editableCellTemplate,编辑单元格就可以了.

$scope.gridOptions = {
    data: 'people',
    enableCellSelection: true,
    enableRowSelection: false,
    enableCellEdit: true,
    columnDefs:
    [
        { field: 'Id', displayName: 'ID', enableCellEdit: false },
        { field: 'Name', enableCellEdit: true, 
          editableCellTemplate: '<input ng-class="\'colt\' + col.index" ng-input="COL_FIELD" />' }
    ] …
Run Code Online (Sandbox Code Playgroud)

javascript angularjs ng-grid

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

如何在单元测试时将控制器注入指令中

我想测试一个像这样声明的AngularJS指令

app.directive('myCustomer', function() {
    return {
      template: 'cust.html'
      controller: 'customerController'
    };
  });
Run Code Online (Sandbox Code Playgroud)

在测试中我想注入(或覆盖)控制器,这样我就可以只测试指令的其他部分(例如模板).该customerController过程可以被单独测试.这样我就可以清楚地分离测试.

  • 我试过通过在测试中设置controller属性来覆盖控制器.
  • 我试过注射customController使用$provide.
  • 我已经尝试设置ng-controller测试中使用的html指令声明.

我无法让任何人工作.问题似乎是我得到指令的引用,直到我得到$compile它.但是在编译之后,控制器已经设置好了.

 var element = $compile("<my-customer></my-customer>")($rootScope);
Run Code Online (Sandbox Code Playgroud)

unit-testing dependency-injection controller directive angularjs

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

使用TypeScript和Traceur有什么好处?

您可以配置TypeScript以输出ES5或ES6.只要您想在不本身支持ES6的平台上运行应用程序,就必须使用Traceur等编译器(包括Traceur运行时库)将ES6编译为ES5.

这样做有什么好处而不是简单地告诉TypeScript输出ES5?(我不认为该应用程序将永远只针对本机ES6平台)

据我所知,你不能在TypeScript(1.5)中编写一个无法在ES5上运行的程序(假设程序编译并包含正确的库).我错了吗?

compilation typescript ecmascript-6 traceur

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

缺少Entity Framework中枚举的列

我已经使用Entity Framework 5构建了代码优先模型.这些类有几个枚举.

我首先将模型类放在原型ASP.NET MVC项目中.我还加了

Database.SetInitializer(new DropCreateDatabaseAlways<dbType>());
Run Code Online (Sandbox Code Playgroud)

命令到global.asax.cs文件.

在Visual Studio中运行MVC应用程序产生了我在SQL Server(2008 R2)中想要的数据库模式.(使用枚举的int值列)

然后我将模型代码复制到实际使用它的解决方案中,该解决方案被分成几个项目,一个具有EF代码,另一个是ASP.NET MVC部分.

我还在global.asax.cs中添加了相同的初始化程序

现在,当我运行项目时,我确实在数据库中获得了正确的表,但由于某些奇怪的原因,表中缺少枚举列!

如何让EF生成枚举列?

database sql-server enums entity-framework entity-framework-5

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

在Git for Windows 2.4下更正TortoiseGit的git.exe路径

我已经安装了Git for windows 2.4.1候选版本(64位)

安装后似乎已将以下内容添加到系统路径中

C:\Program Files\Git\cmd;C:\Program Files\Git\mingw64\bin;C:\Program Files\Git\usr\bin
Run Code Online (Sandbox Code Playgroud)

但是在这种情况下,TortoiseGit似乎停止了工作.当我尝试在TortoiseGit中进行git操作时,它再也找不到我的git用户名了.

在此输入图像描述

我有版本1.8.14.0的TortoiseGit,这是最新的.

TortoiseGit Git.exe Path设置目前指向C:\Program Files\Git\cmd.

在TortoiseGit文档中,它说明了

msysGit/Git for Windows中存在一个已知问题:Git for Windows提供了两个git.exe文件(一个位于名为bin的文件夹中,另一个位于名为cmd的文件夹中).确保Git.exe Path指向Git for Windows安装文件夹中的bin文件夹.

在Git 2.4中有一个文件夹C:\Program Files\Git\usr\bin,但不再包含git.exe二进制文件.

git.exe二进制中都发现了C:\Program Files\Git\cmdC:\Program Files\Git\mingw64\bin但TortoiseGit没有这些设置工作.

windows git tortoisegit

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

如何将私人码头图像从泊坞窗提取到新机器

我有一台带有docker引擎的新机器.我想从docker.com下载私人码头图片.

我可以拉下任何公共码头图像,没问题.

klas@dockerengine:~$ docker pull nginx
latest: Pulling from nginx

39bb80489af7: Pull complete
df2a0347c9d0: Pull complete
[...]
Run Code Online (Sandbox Code Playgroud)

但我的私人形象失败了:

klas@dockerengine:~$ docker pull mellbourn/privaterepo
Pulling repository mellbourn/privaterepo
FATA[0002] Error: image mellbourn/privaterepo:latest not found
Run Code Online (Sandbox Code Playgroud)

我该怎么办?

它可能与SSH有关,但我对SSH知之甚少.

docker dockerhub

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