Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/mercurial/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight TabItem内容在选择不同选项卡时被禁用_Silverlight_Tabcontrol_Silverlight 5.0_Tabitem - Fatal编程技术网

Silverlight TabItem内容在选择不同选项卡时被禁用

Silverlight TabItem内容在选择不同选项卡时被禁用,silverlight,tabcontrol,silverlight-5.0,tabitem,Silverlight,Tabcontrol,Silverlight 5.0,Tabitem,我们有一个问题,即当关闭子窗口中的共享控件时,如果选择了第一个选项卡以外的其他选项卡,则在重新加载控件时,该选项卡的内容将被禁用。但是,如果选择其他选项卡并导航回原始选项卡,则将启用内容 有人知道是什么导致了最初的致残效果吗?我正在努力解决这一问题 XAML C-从TabItem继承的自定义类 我已经找到了答案,谢天谢地,这不是一个与TabControl相关的问题 进一步调查后,问题仅在单击“保存”按钮时出现,而不是单击“取消”或“子窗口关闭”按钮。除了用于保存内容的服务调用之外,它们之间的唯一

我们有一个问题,即当关闭子窗口中的共享控件时,如果选择了第一个选项卡以外的其他选项卡,则在重新加载控件时,该选项卡的内容将被禁用。但是,如果选择其他选项卡并导航回原始选项卡,则将启用内容

有人知道是什么导致了最初的致残效果吗?我正在努力解决这一问题

XAML

C-从TabItem继承的自定义类


我已经找到了答案,谢天谢地,这不是一个与TabControl相关的问题

进一步调查后,问题仅在单击“保存”按钮时出现,而不是单击“取消”或“子窗口关闭”按钮。除了用于保存内容的服务调用之外,它们之间的唯一区别是使用来自相同System.Windows.Controls.dll for Silverlight 5 SDK的BusyIndicator控件

这是在执行服务呼叫时显示的

busyIndicator.IsBusy = true;
然而,一旦服务调用返回并且响应得到处理,它就不会停止显示。由于控件是共享的,这意味着在单击“保存”按钮时选择的选项卡仍然处于禁用状态,原因我不确定

我只是在关闭共享控件之前将IsBusy属性设置为false,并且在重新打开共享控件时启用了所有功能

busyIndicator.IsBusy = false;

您是否有一些处理选项卡的示例代码?选项卡控件是Silverlight 5 SDK的System.Windows.Controls.dll中的System.Windows.Controls.TabControl类。唯一的区别是我们处理OnKeyDown事件以停止在使用向上、向左、向右和向下箭头键时在所选选项卡之间切换的默认行为
using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;

namespace ReACTSL.Control
{
    public class CustomTabItem : TabItem
    {
        protected override void OnKeyDown(KeyEventArgs e)
        {
            switch (e.Key)
            {
                case Key.Home:
                case Key.End:
                case Key.Left:
                case Key.Right:
                case Key.Up:
                case Key.Down:
                    e.Handled = true;
                    break;
                default:
                    break;
            }

            base.OnKeyDown(e);
        }
    }
}
busyIndicator.IsBusy = true;
busyIndicator.IsBusy = false;