问题列表 - 第4544页

绑定到WPF中的方法?

如何在WPF中绑定到此场景中的对象方法?

public class RootObject
{
    public string Name { get; }

    public ObservableCollection<ChildObject> GetChildren() {...}
}

public class ChildObject
{
    public string Name { get; }
}
Run Code Online (Sandbox Code Playgroud)

XAML:

<TreeView ItemsSource="some list of RootObjects">
    <TreeView.Resources>
        <HierarchicalDataTemplate DataType="{x:Type data:RootObject}" 
                                  ItemsSource="???">
            <TextBlock Text="{Binding Path=Name}" />
        </HierarchicalDataTemplate>
        <HierarchicalDataTemplate DataType="{x:Type data:ChildObject}">
            <TextBlock Text="{Binding Path=Name}" />
        </HierarchicalDataTemplate>
    </TreeView.Resources>
</TreeView>
Run Code Online (Sandbox Code Playgroud)

在这里,我想绑定到GetChildren每个RootObject树上的方法.

编辑绑定到一个ObjectDataProvider似乎不起作用,因为我绑定到一个项目列表,并且ObjectDataProvider需要一个静态方法,或者它创建它自己的实例并使用它.

例如,使用Matt的答案,我得到:

System.Windows.Data错误:33:ObjectDataProvider无法创建对象; 类型= 'RootObject'; Error ='构造函数的参数错误.'

System.Windows.Data错误:34:ObjectDataProvider:尝试在类型上调用方法失败; 方法= '的GetChildren'; 类型= 'RootObject'; Error ='无法在目标上调用指定的成员.TargetException:'System.Reflection.TargetException:非静态方法需要一个目标.

.net data-binding wpf xaml

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

java中的对象引用

考虑这个简单的servlet示例:

protected void doGet(HttpServletRequest request, HttpServletResponse response){
    Cookie cookie = request.getCookie();
    // do weird stuff with cookie object
}
Run Code Online (Sandbox Code Playgroud)

我总是想知道..如果您修改对象cookie,是通过对象还是通过引用?

java object

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

在MATLAB中交换两个元素的性能

纯粹作为一个实验,我在MATLAB中编写排序函数,然后通过MATLAB分析器运行它们.我觉得最令人困惑的方面是交换元素.

我发现在矩阵中交换两个元素的"官方"方式

self.Data([i1, i2]) = self.Data([i2, i1])
Run Code Online (Sandbox Code Playgroud)

运行速度比在四行代码中运行要慢得多:

e1 = self.Data(i1);
e2 = self.Data(i2);
self.Data(i1) = e2;
self.Data(i2) = e1;
Run Code Online (Sandbox Code Playgroud)

第二个示例占用的总时间长度比第一个示例中的单行代码少12倍.

有人会解释为什么?

performance matlab

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

为什么"onmouseover"事件使用"return true"来防止默认行为?

我一直在寻找这个,但没有得到任何解释.

对于"onclick"和javascript中的其他事件,返回false的事件处理程序意味着"防止默认操作".但是,"onmouseover"有一个例外.对于"onmouseover",返回true表示"防止默认操作".

为什么"onmouseover"有这么奇怪的例外情况?

javascript events onmouseover event-handling

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

使用GTK查找工作区大小(屏幕大小减去任务栏)

如何创建一个填充整个桌面的主窗口,而不覆盖(或被任务栏覆盖)任务栏并且没有最大化?我可以找到整个屏幕尺寸并相应地设置主窗口:

window = gtk.Window()
screen = window.get_screen()
window.resize(screen.get_width(), screen.get_height())
Run Code Online (Sandbox Code Playgroud)

但窗口的底部由任务栏覆盖.

python gtk pygtk

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

如何以编程方式获取.net2.0中的应用程序的GUID

我需要在C#.NET2.0中访问我的项目的程序集.

我可以在项目属性下的"程序集信息"对话框中看到GUID,目前我刚刚将它复制到代码中的const.GUID永远不会改变,所以这不是解决方案的坏处,但直接访问它会很好.有没有办法做到这一点?

.net c# guid visual-studio-2005 .net-2.0

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

SharePoint 404页面

最好的位置是在web.config customError部分中为SharePoint设置404错误页面,还是在网站集/ Web应用程序上有配置设置?

sharepoint

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

你什么时候为一个类定义ostream运算符<<?

问题可能是主观的,所以语法是

std::ostream& operator << (std::ostream & o, const SomeClass &a) {
    return o << a.accessor().. ; 
}
Run Code Online (Sandbox Code Playgroud)

你通常什么时候为你编写的类定义它,什么时候避免为你的类编写这个友元函数.

c++

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

StringBuilder字符串是不可变的吗?

与简单地连接字符串相比,StringBuilder具有更快的字符串操作工具的美誉.不管这是不是真的,我想知道StringBuilder操作的结果和它们产生的字符串.

快速浏览Reflector表明StringBuilder.ToString()并不总是返回副本,有时似乎返回内部字符串的实例.它似乎也使用一些内部函数来操纵内部字符串.

那么如果我这样做,我会得到什么?

string s = "Yo Ho Ho";
StringBuilder sb = new StringBuilder(s);
string newString = sb.ToString();
sb.Append(" and a bottle of rum.");
string newNewString = sb.ToString();
Run Code Online (Sandbox Code Playgroud)

newString和newNewString是不同的字符串实例还是相同?我试图通过反射器解决这个问题,而我只是不太了解一切.

这段代码怎么样?

StringBuilder sb = new StringBuilder("Foo\n");
StringReader sr = new StringReader(sb.ToString());
string s = sr.ReadLine();
sb.Append("Bar\n");
s = sr.ReadLine();
Run Code Online (Sandbox Code Playgroud)

最后一个语句会返回null还是"Bar"?如果它返回一个或其他,这个定义或未定义的行为?换句话说,我可以依靠吗?

文档在这个主题上非常简洁,我不愿意依赖观察到的行为而不是规范.

.net c# string

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

什么时候结束活动被鞋子召唤?

使用Shoes,我想在窗口销毁时执行一个块.我以为我可以使用finish事件,但是在下面的代码中,显示"Starting",但是"Finished"从不显示.


Shoes.app(:title => "Test") do

    flow do
        start do |obj|
            alert("Starting")
        end

        finish do |obj|
            alert("Finished")
        end

        button "Hello"
    end
end
Run Code Online (Sandbox Code Playgroud)

ruby shoes

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