问题列表 - 第41911页

WPF/MVVM - 如何在ViewModel中双击TreeViewItems?

(注-这是一个重新出任我的第一个问题,下得了错误标题发布:这里对不起!)

我有一个标准的WPF树视图,并有绑定项目来查看模型类.

我现在希望在双击项目时处理行为(打开文档visual-studio-style).

我可以在树视图(显示xaml)的控件中触发事件处理程序,但是如何绑定到视图模型类上的特定行为 - 例如ProjectViewModel?

最好绑定到ICommand-implementationmen,因为这在别处使用...

<TreeView ItemsSource="{Binding Projects}" MouseDoubleClick="TreeView_MouseDoubleClick">
    <TreeView.ItemContainerStyle>
        <!-- 
This Style binds a TreeViewItem to a TreeViewItemViewModel. 
-->
        <Style TargetType="{x:Type TreeViewItem}">
            <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
            <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
            <Setter Property="FontWeight" Value="Normal" />
            <Style.Triggers>
                <Trigger Property="IsSelected" Value="True">
                    <Setter Property="FontWeight" Value="Bold" />
                </Trigger>
            </Style.Triggers>
        </Style>
    </TreeView.ItemContainerStyle>

    <TreeView.Resources>
        <HierarchicalDataTemplate DataType="{x:Type Implementations:ProjectViewModel}" ItemsSource="{Binding Children}">
            <StackPanel Orientation="Horizontal">
                <Image Width="16" Height="16" Margin="3,0" Source="Images\Region.png" />
                <TextBlock Text="{Binding DisplayName}" />
            </StackPanel>
        </HierarchicalDataTemplate>

        <HierarchicalDataTemplate DataType="{x:Type Implementations:PumpViewModel}" ItemsSource="{Binding Children}"> …
Run Code Online (Sandbox Code Playgroud)

c# wpf mvvm mouseevent commandbinding

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

渐近最优算法,用于计算线是否与凸多边形相交

检测线是否与凸多边形相交的O(n)算法包括检查多边形的任何边是否与线相交,并查看交点的数量是奇数还是偶数.

是否存在渐近更快的算法,例如O(log n)算法?

algorithm line asymptotic-complexity convex-polygon computational-geometry

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

您是否应该使用显式类型转换更正有关类型转换的编译器警告?

在我当前的项目中,编译器显示了数百个关于类型转换的警告.

有很多像这样的代码

iVar = fVar1*fVar2/fVar3;
// or even
iVar = fVar1*fVar2/fVar3+.5f;
Run Code Online (Sandbox Code Playgroud)

故意将float值分配给int.

当然,我可以使用修复这些警告

iVar = (int)(...);
Run Code Online (Sandbox Code Playgroud)

但那看起来很丑陋.

你宁愿生活在丑陋中还是与警告一起生活?
还是有一个干净的解决方案?

c c++ type-conversion compiler-warnings

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

int(floatvar)和(int)floatvar之间有区别吗?

可能重复:
C++:函数(myVar)和(函数)myVar有什么区别?

我已经看到并使用了这些类型转换的两种变体:

int(floatvar)

(int)floatvar
Run Code Online (Sandbox Code Playgroud)

这两者有什么区别吗?关于何时使用哪个有什么偏好?

c++ language-features typecast-operator

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

如果外部事务范围未完成,内部事务范围是否会回退?

我有两个交易范围,一个在另一个范围内.我很想知道内部事务范围是否会在提交后回滚,而外部事务范围没有完成.

c# transactionscope

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

如何从UITableView中删除一行

我试图从我的表视图中删除一行,到目前为止一直没有成功.我一直收到这个错误:

"由于未捕获的异常'NSInternalInconsistencyException'终止应用程序,原因:'无效更新:第0节中的行数无效.更新后的现有节中包含的行数(5)必须等于包含的行数在更新(5)之前的那一部分,加上或减去从该部分插入或删除的行数(0插入,1删除).'"我用来填充表视图的数组在该类中声明,也是我从sqlite db获取我的数组的对象.

我用来尝试删除行的代码如下.

- (void)tableView:(UITableView *)tableView commitEditingStyle:(UITableViewCellEditingStyle)editingStyle forRowAtIndexPath:(NSIndexPath *)indexPath {

if (editingStyle == UITableViewCellEditingStyleDelete) {
    // Delete the row from the data source

    [categoryArray objectAtIndex:indexPath.row];
    [tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:YES];

}   
else if (editingStyle == UITableViewCellEditingStyleInsert) {
    // Create a new instance of the appropriate class, insert it into the array, and add a new row to the table view
}   
}
Run Code Online (Sandbox Code Playgroud)

现在我希望得到回答的问题:

- 如何正确删除行?

- 如果它只是在tableView中留下的那一行,我将面临删除行吗?

- 我可以将方法中使用的tableView更改为我在.h文件中声明的UITableView吗?

非常感谢.


编辑

- 全.m代码

#import "DeleteCategoryTableView.h"
#import "KeyCryptAppAppDelegate.h"


@implementation DeleteCategoryTableView
@synthesize …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c uitableview

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

如何保证XPath“ OR”查询的节点顺序

我有一段XML,看起来像

<body>
   Some text....
   <nodeA>....</nodeA>
   more text
   <someOtherNode>
      <nodeA>.......</nodeA>
   </someOtherNode>
   <nodeB>.......</nodeB>  
   etc.....
</body>
Run Code Online (Sandbox Code Playgroud)

我正在<body>使用类似于以下内容的XPATH查询 选择所有的nodeA和NodeB节点//nodeA|//nodeB

据我了解,.NET支持不保证节点顺序的XPath 1.0。

我如何保证在我的OR查询中按文档顺序返回选定的节点:

nodeA, nodeA, nodeB   
Run Code Online (Sandbox Code Playgroud)

.net xml xpath

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

Eclipse插件对SWT类的依赖性未得到解决

我有一个使用一些swt对象的eclipse插件项目,例如 -

import org.eclipse.swt.widgets.Composite;
Run Code Online (Sandbox Code Playgroud)

当我尝试将"目标平台"设置为"运行平台(活动)"进行编译时,它编译得很好,我不需要导入任何特定于swt的插件.

但是,我使用Eclipse 3.6.0创建了一个目标平台,如果我将其设置为活动平台,则只要使用了swt类,项目就会出现编译错误,并且无法解决它们.

我应该在哪个插件中添加依赖项来解决这些错误?

我尝试添加'org.eclipse.swt',但这似乎没有帮助.

eclipse swt eclipse-plugin

5
推荐指数
2
解决办法
5705
查看次数

如何在按钮名称下添加下划线

我有名为"itemname"的按钮,现在我想在"itemname"中的字符"i"下面加下划线,但我不知道该怎么做.有谁能告诉我怎么样?

.net c# winforms

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

生成与某些输入集匹配的正则表达式是否是可解决的问题?

我提供了一些包含已知分隔数量的文本块的输入集.

我想创建一个程序,自动生成一个或多个正则表达式,每个正则表达式匹配输入集中的每个文本块.

我看到一些相对简单的方法来实现暴力搜索.但我不是编译器理论方面的专家.这就是我很好奇的原因:

1)这个问题可以解决吗?或者有一些原则不可能做出这样的算法?

2)是否有可能实现该算法的多项式复杂度并避免暴力强制?

regex algorithm compiler-theory

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