gpt4 book ai didi

c# - 为指定用户打开 "Find shelvesets"页面

转载 作者:太空宇宙 更新时间:2023-11-03 15:47:44 25 4
gpt4 key购买 nike

我正在尝试开发 Visual Studio 2013 Team Foundation Server 扩展。

我想为某个用户打开“查找书架集”页面,但找不到方法。

我正在尝试使用以下代码:

ITeamExplorer teamExplorer = (ITeamExplorer)ServiceProvider.GetService(typeof(ITeamExplorer));
if (teamExplorer != null)
{
teamExplorer.NavigateToPage(new Guid(TeamExplorerPageIds.FindShelvesets), null);
}

这会打开 FindShelvesets 页面,但它会显示当前用户的书架集。我希望它显示我可以通过参数传递的另一个用户的搁置集。

NavigateToPage 方法接受一个 GUID 参数,该参数指定将打开的页面,它还接受一个上下文参数,该参数是该页面的上下文。

我假设我可以将一个对象作为第二个参数传递,该对象可以覆盖 FindShelvesets 页面的默认用户。问题是我不知道那个对象应该是什么,而且我找不到任何可以帮助我的文档。我尝试传递一个包含另一个用户名称的字符串,但这没有用。

所以问题是,我如何导航到任意用户的 FindShelvesets 页面。另外,我在哪里可以找到一些关于不同团队资源管理器页面可以接受哪些上下文的文档?

最佳答案

深入研究“Microsoft.TeamFoundation.VersionControl.Controls”程序集时,尤其是“Microsoft.TeamFoundation.VersionControl.Controls.FindShelvesets.FindShelvesetsPage.InitializeModel(PageInitializeEventArgs e)”' 方法,你会看到他们使用一个名为 'FindShelvesetsModelContext' 的内部类作为上下文/参数(参见 my blog post about this one and others )..并且因为它是内部的,你不能真正提供它'从外面',除非你使用反射 - 如果绝对需要,这可能是你唯一的选择..但显然是一个非常可怕和不稳定/不可靠的选择。

关于c# - 为指定用户打开 "Find shelvesets"页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27403564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com