问题列表 - 第10264页

将只读GUI属性推送回ViewModel

我想编写一个ViewModel,它始终知道View中某些只读依赖项属性的当前状态.

具体来说,我的GUI包含一个FlowDocumentPageViewer,它一次从FlowDocument显示一个页面.FlowDocumentPageViewer公开了两个名为CanGoToPreviousPage和CanGoToNextPage的只读依赖项属性.我希望我的ViewModel始终知道这两个View属性的值.

我想我可以使用OneWayToSource数据绑定来做到这一点:

<FlowDocumentPageViewer
    CanGoToNextPage="{Binding NextPageAvailable, Mode=OneWayToSource}" ...>
Run Code Online (Sandbox Code Playgroud)

如果这是允许的,那将是完美的:每当FlowDocumentPageViewer的CanGoToNextPage属性发生更改时,新值将被推送到ViewModel的NextPageAvailable属性,这正是我想要的.

不幸的是,这不编译:我收到一个错误,说'CanGoToPreviousPage'属性是只读的,不能从标记设置.显然只读属性不支持任何类型的数据绑定,甚至不支持与该属性相关的只读数据绑定.

我可以让我的ViewModel的属性为DependencyProperties,并使OneWay绑定以另一种方式运行,但我并不为关注点分离违规而疯狂(ViewModel需要对View的引用,MVVM数据绑定应该避免).

FlowDocumentPageViewer不公开CanGoToNextPageChanged事件,我不知道从DependencyProperty获取更改通知的任何好方法,没有创建另一个DependencyProperty来绑定它,这在这里看起来有点过分.

如何让ViewModel了解视图的只读属性的更改?

data-binding wpf readonly mvvm

121
推荐指数
5
解决办法
4万
查看次数

Umbraco数据库问题 - 添加自定义表

我正在开发一个由Umbraco管理的网站.我需要存储有关图像和客户端的数据.我认为我无法将这些数据存储在现有表中.

有什么理由我不应该将我需要的表添加到Umbraco数据库中,而不是创建一个单独的数据库?到目前为止,我喜欢Umbraco,但文档有点薄,我没有找到任何建议.

TIA

database umbraco

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

c ++多态((X*)y) - > foo()vs((X)*y).foo()

假设Y是来自类X的派生类,X将foo声明为虚拟.假设y是(Y*)类型.然后((X*)y) - > foo()将执行Y版本的foo(),但是((X)*y).foo()将执行X版本.你能告诉我为什么多态性不适用于解引用的案例吗?我希望任何一种语法都会产生Y版本的foo().

c++ polymorphism

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

通过Python的eval()运行JSON?

除了最好的做法,有没有令人信服的理由这样做?

我正在编写一个post-commit钩子,用于Google Code项目,该项目通过JSON对象提供提交数据.GC提供HMAC身份验证令牌以及请求(在JSON数据之外),因此通过验证该令牌,我可以高度确信JSON数据是良性的(因为不信任Google)并且有效.

我自己(简短)的调查表明,JSON恰好是完全有效的Python,但"\/"转义序列除外- GC似乎没有生成.

因此,当我使用Python 2.4(即没有json模块)时,eval()看起来真的很诱人.

编辑:为了记录,我不是在问这是不是一个好主意.我非常清楚它不是,我非常怀疑即使我最终将它用于这个项目,我也会将这项技术用于任何未来的项目.我只是想确保我知道如果我这样做会遇到什么样的麻烦.:-)

python json

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

CA2W给了我一个"'AtlThrowLastWin32':标识符未找到"错误

当我按照MSDN文档使用CA2W将big5字符串转换为Visual Studio 2005中的unicode字符串时,我遇到了一个奇怪的编译错误.

这是我写的代码:

#include <string>
#include <atldef.h>
#include <atlconv.h>

using namespace std;


int _tmain(int argc, _TCHAR* argv[])
{
    string chineseInBig5 = "\xA4\xA4\xA4\xE5";
    ATL::CA2W(chineseInBig5.c_str());
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

编译错误:错误C3861:'AtlThrowLastWin32':找不到标识符

我不知道这怎么可能发生.AtlThrowLastWin32文档显示atldef.h是必需的,但我在atldef.h中找不到AtlThrowLastWin32的声明.

c++ unicode atl visual-studio-2005 big5

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

从RDBMS(MySQL)迁移到Solr时的架构注意事项

在为未来的MySQL - > Solr迁移测试Solr安装时,很明显,与MySQL之类的RDBMS相比,Solr与构建良好数据结构的"规则"以及扩展的高效搜索有很大不同.最明显的是数据没有(或似乎没有)标准化到相同的程度.

有没有人对从MySQL到Solr的最佳转换方式有什么建议?是否有任何已建立的模式用于在非RDBMS(特定Solr)中构建数据,我应该学习哪些?有什么常见的陷阱要避免吗?这只是将相关表格反规范化为对象的情况吗?

mysql migration rdbms solr

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

Perl的unpack()是否比substr()更快?

我读过几次unpack()比这更快substr(),特别是随着子串数量的增加.但是,这个基准建议不然.我的基准测试是否存在缺陷,或者是unpack()旧版Perl的保留所谓的性能优势?

use strict;
use warnings;
use Benchmark;

my ($data, $format_string, $n_substrings);

my %methods = (
    unpack => sub { return unpack $format_string, $data },
    substr => sub { return map {substr $data, $_, 1} 0 .. $n_substrings - 1 },
);

for my $exp (1 .. 5){
    $n_substrings = 10 ** $exp;
    print $n_substrings, "\n";
    $format_string = 'a1' x $n_substrings;
    $data          =   9  x $n_substrings;
    Benchmark::cmpthese -2, \%methods;
}
Run Code Online (Sandbox Code Playgroud)

输出(在Windows上):

10
           Rate unpack substr …
Run Code Online (Sandbox Code Playgroud)

perl

14
推荐指数
3
解决办法
4102
查看次数

PowerShell脚本是否在Mono下运行?

PowerShell脚本是否在Mono下运行?我想在Mac上运行它们.

powershell mono

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

AppleScript:如何退出所有正在运行的用户应用程序,然后重新启动到bootcamp分区(这部分有效)?

我经常在Mac Pro(e2008)(Mac OS X 10.5.6)的bootcamp分区上重启Windows.因为我喜欢花时间重新启动其他东西,而不是只是坐在那里我想编写/执行一个基本上可以做的简单的AppleScript:

  1. 退出所有正在运行的用户应用程
  2. 然后* - 应用程序已正确退出后 - *重新启动到我的bootcamp分区

第2部分我已经使用了一段时间,我在网上找到的脚本如下:

do shell script "bless -mount /Volumes/WinVista/ -legacy -setBoot -nextonly" with 
administrator privileges
do shell script "shutdown -r now" with administrator privileges
Run Code Online (Sandbox Code Playgroud)

这很好用,除非应用程序打开它们没有正确关闭(基本上它们正在'强制退出')所以我想先让脚本关闭应用程序然后执行重启.

我在Stack Overflow上发现了类似的问题,但由于我对AppleScript的理解几乎不存在,我不知道如何将这个结合起来:( 使用Applescript退出所有应用程序?)和重启的脚本.

这可能吗?如果是这样,我将不胜感激,你可以向我投掷任何建议/帮助/脚本.

此外,我几乎没有AppleScripting的经验,到目前为止我所做的只是复制/粘贴我在网上发现的内容,以防万一.

谢谢你的阅读.

Jannis

macos applescript restart bootcamp

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

C/C++计算小数位数?

假设用户输入的是十进制数,例如.5. 2155(有4位小数).它可以自由存储(int,double)等.

是否有任何聪明(或非常简单)的方法来找出这个数字有多少小数?(有点像问题是如何通过屏蔽最后一位来找到数字是偶数还是奇数).

c c++ decimal

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