问题列表 - 第45369页

ViewModel属性上的奇怪行为,RaisePropertyChanged未被执行

我注意到在向ViewModel属性添加对象时,RaisePropertyChanged会出现奇怪的行为.

private List<string> _items;
public List<string> Items
{
    get 
    {
        if(_items == null){ _items = new List<string>(); } 
        return _itmes; 
    }
    set
    {
        _items = value;
        RaisePropertyChanged("Items");
    }
}
Run Code Online (Sandbox Code Playgroud)

我什么时候通过属性将对象添加到集合中

Items.Add("new string");
Run Code Online (Sandbox Code Playgroud)

RaisePropertyChanged永远不会被调用.

让RaisePropertyChanged按照我希望的方式运行的最佳方法是什么?

c# wpf mvvm mvvm-light

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

摆动拖放文件可以传输吗?

我想从我的应用程序拖放到系统文件夹中,这样当我放下一个项目时,它会显示为一个新文件,代表我拖动的对象。

我应该使用什么 DataFlavor?

swing drag-and-drop file

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

从两点和方向向量计算角度

我在游戏中有两个向量.一个向量是玩家,一个向量是一个对象.我还有一个向量,指定玩家面对的方向.方向矢量没有z部分.这个点的大小为1,位于原点附近.

我想计算士兵当前面对的方向和物体之间的角度,所以我可以正确地平移一些音频(仅限立体声).

下图描述了我的问题.我想计算两条虚线之间的角度.一条虚线连接玩家和物体,另一条线代表玩家从玩家所处的方向所朝向的方向.

角度问题

目前,我正在这样做(假设玩家,物体和方向都是3点,x,y和z的向量):

Vector3d v1 = direction;
Vector3d v2 = object - player;
v1.normalise();
v2.normalise();
float angle = acos(dotProduct(v1, v2));
Run Code Online (Sandbox Code Playgroud)

但它似乎给我不正确的结果.有什么建议?

代码测试:

Vector3d soldier = Vector3d(1.f, 1.f, 0.f);
Vector3d object = Vector3d(1.f, -1.f, 0.f);
Vector3d dir = Vector3d(1.f, 0.f, 0.f);

Vector3d v1 = dir;
Vector3d v2 = object - soldier;

long steps = 360;
for (long step = 0; step < steps; step++) {
    float rad = (float)step * (M_PI / 180.f);
    v1.x = cosf(rad);
    v1.y = sinf(rad);
    v1.normalise(); …
Run Code Online (Sandbox Code Playgroud)

math vector

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

为什么要发生整数溢出?

在这个问题中,主题是如何使VS检查C#中的算术溢出并抛出异常:C#溢出不起作用?如何启用溢出检查?

其中一条评论说得有些奇怪,而且投票很多,我希望你能在这里帮助我:

您还可以使用checked关键字来包装语句或一组语句,以便显式检查它们是否存在算术溢出.设置项目范围的属性有点冒险,因为溢出通常是一个相当合理的期望.

我不太了解硬件,但我知道溢出与寄存器的工作方式有关.我一直认为溢出导致未定义的行为,应尽可能防止溢出.(在"正常"项目中,不编写恶意代码)

你怎么可能会想到一个溢出发生,为什么你不总是阻止它,如果你有可能性?(通过设置相应的编译器选项)

.net c# overflow integer-overflow

25
推荐指数
4
解决办法
2604
查看次数

jQuery工具 - >工具提示破坏方法?

除了jQuery UI日历之外,我在表中使用Flowplayer的jQuery Tools框架(特别是工具提示插件).

表格的每一行都能够在其上方和下方插入一行.

这样做的时候,我正在克隆点击的对象(事件和对象)并将其直接插入到上方或下方.

添加新行后,我刷新表格,为我的元素生成新的id,重新初始化datepicker,并尝试重新初始化工具提示.

我正在寻找一种方法从实例中完全销毁它并重新应用它.

我正在寻找类似于该datepicker('destroy')方法的东西.

$j($editRow).find('input.date').datepicker('destroy').datepicker({dateFormat: 'mm-dd-yy', defaultDate : defaultDateStr});

我已经尝试过:

  1. 取消绑定鼠标悬停和焦点事件:当重新调用工具提示时,它会自动转到它所生成的对象.

  2. 隐藏工具提示DOM元素,从目标中删除工具提示对象,然后重新应用它.同样的事情发生在(1)

我有办法自己创建一个破坏方法吗?

javascript jquery tooltip jquery-tools destroy

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

Active Directory中"国家/地区"字段的值是多少?

我有一种感觉Windows期望'country'是一个整数,0表示'US'.如果是这种情况,整数和ISO 2字母国家/地区代码之间的映射是什么?有效

ldap active-directory

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

如何在 div 的顶部和底部之间居中文本?

我想将我的文本与我的 div 中间对齐,但我似乎无法让它工作。我怎样才能做到这一点?

谢谢您的帮助!

<div style="height:40px;">Personal Information</div>
Run Code Online (Sandbox Code Playgroud)

“个人信息”应位于顶部和底部之间。

html css

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

Facebook SDK是否有限制发布到墙上

Facebook是否对应用程序每天发布的页数或墙贴数量有限制?

facebook

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

如何在Rails下拉菜单中设置默认选定项?

在创建标准Rails下拉菜单时,如何设置列表中的哪个项目应该是默认值?
我问,因为在过去我只是将一个nil条目作为我的值列表中的第一个项目进入下拉列表,但是当使用{:include_blank => true}时,空白条目不是默认条目选中的项目,列表中的第一项是.

ruby-on-rails

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

在具有给定工作目录的emacs中打开shell

我想make-shells在emacs中有一个命令,它将打开一些emacs-shell缓冲区,每个缓冲区都有自己的工作目录.我的想法是,对于我正在处理的每个项目,我都有一个从该项目目录开始的shell,因此我可以轻松地在它们之间切换.

目前我有这个代码:

(defun shell-dir (name dir)
  (interactive "sShell name: \nDDirectory: ")
  (shell name)
  (switch-to-buffer name)
  (comint-send-string (current-buffer) (concat "cd " dir "\r"))
  (sleep-for 0 10)
  (dirs))

(defun make-shells ()
  (interactive)
  (shell-dir "project1" "~/proj/project1")
  (shell-dir "project2" "~/proj/project2")
  (shell-dir "project3" "~/proj/project3")
  (delete-window))
Run Code Online (Sandbox Code Playgroud)

但这很丑陋,有一半的时间(dirs)没有找到正确的路径,因此标签完成会中断,直到我手动重新运行它.是否有内置方法来设置emacs shell的当前工作目录?或者像CEDET这样的东西(再加上对shell和emacs模式的依赖程度更低)是一个更好的解决方案吗?

emacs elisp cedet

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