我正在尝试为我的应用程序开发一个系统维护屏幕,其中我有几个选项卡,每个选项卡代表不同的维护选项,即维护系统用户等.一旦用户点击edit/new来更改现有记录,我想阻止导航离开当前标签,直到用户点击保存或取消.
经过一些谷歌搜索后,我发现了一个链接http://joshsmithonwpf.wordpress.com/2009/09/04/how-to-prevent-a-tabitem-from-being-selected/这似乎解决了我的问题,或者是我想.
我试过实现这个,但我的事件似乎永远不会发生.以下是我的XAML.
<TabControl Name="tabControl">
<TabItem Header="Users">
<DockPanel>
<GroupBox Header="Existing Users" Name="groupBox1" DockPanel.Dock="Top" Height="50">
<StackPanel Orientation="Horizontal">
<Label Margin="3,3,0,0">User:</Label>
<ComboBox Width="100" Height="21" Margin="3,3,0,0"></ComboBox>
<Button Width="50" Height="21" Margin="3,3,0,0" Name="btnUsersEdit" Click="btnUsersEdit_Click">Edit</Button>
<Button Width="50" Height="21" Margin="3,3,0,0" Name="btnUsersNew" Click="btnUsersNew_Click">New</Button>
</StackPanel>
</GroupBox>
<GroupBox Header="User Information" Name="groupBox2">
<Button Content="Cancel" Height="21" Name="btnCancel" Width="50" Click="btnCancel_Click" />
</GroupBox>
</DockPanel>
</TabItem>
<TabItem Header="User Groups">
</TabItem>
</TabControl>
Run Code Online (Sandbox Code Playgroud)
这是我的代码
public partial class SystemMaintenanceWindow : Window
{
private enum TEditMode { emEdit, emNew, emBrowse }
private TEditMode _EditMode = TEditMode.emBrowse;
private TEditMode …
Run Code Online (Sandbox Code Playgroud) 我正在尝试通过使用Multibinding在我的网格中组合2个字段的信息,多绑定工作正常,但是当我尝试开始格式化这个绑定中的日期之一时,我遇到了问题.
这两个字段是用户首字母,即EGJ和希望实现类似"EGJ - 01/01/2011"的组合字段的输入日期
下面是我现有的XAML
<tk:DataGridTextColumn.Binding>
<MultiBinding StringFormat=" {0} - {}{1:dd/MM/yyyy}">
<Binding Path="UserInitials" />
<Binding Path="EntryDate" />
</MultiBinding>
</tk:DataGridTextColumn.Binding>
Run Code Online (Sandbox Code Playgroud)
任何帮助或指针都非常感谢
在此先感谢您的帮助和帮助.
我试图找到一些实用性/方向,以便最好地比较两个单词docx文件(原始版本和修改版本)的差异,然后突出显示c#中修改版本的更改.
再次感谢您提供的任何帮助.