为什么我不能使用带有参数的IEnumerable?这会被解决吗?我真的希望他们能重写旧库以使用泛型......
根据MSDN文档,可以使用功能区:RibbonControlSizeDefinition通过设置ControlSizeDefinition属性来控制WPF功能区上项目的大小.有没有人使用这个属性有什么成功?我发现它完全被忽略了.我最初使用数据绑定设置它,但也尝试使用代码隐藏文件.
这个问题是类似的,但是在其中一条评论中正确地指出OP已经使用了RibbonControlGroup,因此看到了预期的行为.
我知道通常最好让功能区对尺寸进行自己的操作.可悲的是,这不是这个项目的选择.
我列出了我的XAML代码中不起作用的部分.
<ribbon:RibbonTab Header="MyTab">
<ribbon:RibbonGroup Header="MyGroup">
<ribbon:RibbonButton Label="My big button" Name="BigButton"
LargeImageSource="Images\Ribbon\assignments_duties_a2k_32.png"
SmallImageSource="Images\Ribbon\assignments_duties_a2k_16.png">
<ribbon:RibbonButton.ControlSizeDefinition>
<ribbon:RibbonControlSizeDefinition ImageSize="Large" IsLabelVisible="True" />
</ribbon:RibbonButton.ControlSizeDefinition>
</ribbon:RibbonButton>
<ribbon:RibbonButton Label="My little button" Name="SmallButton"
LargeImageSource="Images\Ribbon\assignments_duties_a2k_32.png"
SmallImageSource="Images\Ribbon\assignments_duties_a2k_16.png">
<ribbon:RibbonButton.ControlSizeDefinition>
<ribbon:RibbonControlSizeDefinition ImageSize="Small" IsLabelVisible="True" />
</ribbon:RibbonButton.ControlSizeDefinition>
</ribbon:RibbonButton>
</ribbon:RibbonGroup>
</ribbon:RibbonTab>
Run Code Online (Sandbox Code Playgroud) 使用自定义UI XML文件在Access中添加多个自定义功能区选项卡时,只要表单关闭,所选功能区选项卡就会更改回第一个自定义选项卡.
我们以编程方式从VBA加载自定义功能区.我创建了一个accdb来重现问题.该文件夹还包含一个包含功能区定义的XML文件.它必须与.accdb文件位于同一目录中.
问题很容易证明:
请注意,Tab1现在处于活动状态.
当然,在这个小例子中db这个问题似乎很小.但是,我们有一个非常大的项目,包含许多自定义选项卡,每个选项卡包含许多组和按钮.我们的用户发现非常令人沮丧的是,他们每次关闭表单时都会在功能区上不断丢失位置.
我们调查了一种解决方法,我们以编程方式存储选定的选项卡,并在我们认为需要时将其恢复.然而,证明难以可靠地做到这一点.(没有像这样自动化功能区的Office API,但本文有所帮助.)
还有其他人遇到过这个问题吗?您是否找到了防止标签自动更改的方法?
编辑:似乎这个问题是在Office 2010 SP1中实现的修复程序中引入的.(对不起,没有链接:不要认为我可以有两个以上.)RTM版本中没有问题.SP1的修复列表包括:"当用户返回到该对象时,Access不会激活或将用户返回到先前打开的数据库对象的正确功能区选项卡." 看起来他们已经尝试修复Form.RibbonName属性(它支持上下文功能区)的使用,但在此过程中打破了默认功能区.
我有几千个图像文件已被我的机器上的一些流氓进程损坏.我有一些.NET代码来发现损坏的文件.我想枚举并访问这些文件的早期版本(启用Windows 8文件历史记录)并恢复工作版本.
我在这个页面上找到了有关如何在代码中配置文件历史记录的信息,但没有关于如何在代码中访问以前版本的信息.这是一个简单的API吗?
通常在C#解决方案中命名命名空间,使它们匹配项目的默认命名空间以及包含文件的任何子目录的名称.
例如,一个被调用的文件Haddock.cs位于一个被调用的目录中Fish,而默认的命名空间(在VS的项目属性的第一个选项卡中)Lakes则该文件应包含类似的内容
namespace Lakes.Fish
{
public class Haddock
{
}
}
Run Code Online (Sandbox Code Playgroud)
该了StyleCop分析仪项目包含一个很好的规则,用于验证类名的文件名匹配.
有没有办法可以编写一个规则来验证命名空间名称是否正确?
我试图弄清楚如何为我创建的WF服务(MyFoo.xamlx)提供端点等.通常,当您创建服务时,您需要使用服务名称=""来反映您创建的服务类型?即通过填写这样的东西:
<Service name="MyNameSpace.Foo" behaviorConfiguration="myFooBehaviorConfig">
这适用于典型的.svc场景,我可以正常工作.只有将这个概念映射到.xamlx服务?在那里,如果我有Foo.xamlx放在服务名称内部不起作用 - 或似乎不起作用(因为没有启用元数据).
如果我然后从服务中删除了behaviorConfiguration属性,并从 标记中删除了myFooBehaviorConfig<behavior/> - 因为它基本上会为web配置带来更多的全局设置 - 繁荣!我可以看到.xamlx暴露的方法/操作?
<serviceBehaviors>
<behavior name="foo" >
VS
<serviceBehaviors>
<behavior >
起初这很好,不需要任何努力,但同时我不希望开发人员访问HTTP端点或netpipe.我只希望他们通过我指定的net.tcp端口进入.为了做到这一点,我需要以<Service name=""/>某种方式匹配xamlx?
我也尝试过使用创建一个空的.svc文件然后以那种方式指向xamlx的技巧(这样开发人员总是假定它的.svc而不是.xamlx)
<%@ ServiceHost Language="C#" Debug="true" Service="ActivityHubService.xamlx" Factory="System.ServiceModel.Activities.Activation.WorkflowServiceHostFactory" %>
再次,如果我删除命名行为等,这也可以通过foo.svc ..但我似乎无法破解<service> 与freakin xamlx 的整个匹配!:) 呵呵.
令人沮丧..
这个领域的专家是谁?
wcf web-config workflowservice endpoint workflow-foundation-4
c# ×3
ribbon ×2
.net-4.5 ×1
access-vba ×1
endpoint ×1
generics ×1
ienumerable ×1
ms-access ×1
office-2010 ×1
params ×1
roslyn ×1
wcf ×1
web-config ×1
winapi ×1
windows-8 ×1
wpf ×1