Esempio n. 1
0
        public void SetHeader(UIElement header, string name, ref ObservableCollection <object> tabControlItems, bool channel = false)
        {
            tabControlName = name;
            isChannel      = channel;
            var dockPanel = new DockPanel();

            dockPanel.Children.Add(header);

            tb = tabControlItems;

            var closeButton = new TabCloseButton();

            closeButton.Click +=
                (sender, e) =>
            {
                if (tabControlName != "main")
                {
                    tb.Remove(this);
                    if (isChannel)
                    {
                        clientSendToServer.SendToServer(Command.leaveChannel, tabControlName);
                    }
                }
                else
                {
                    MessageBox.Show("can't close main tab!", "Chat: " + App.Client.strName, MessageBoxButton.OK, MessageBoxImage.Error);
                }
            };
            dockPanel.Children.Add(closeButton);

            Header = dockPanel;
        }
Esempio n. 2
0
        public void SetHeader(UIElement header, string name, ref ObservableCollection <object> tabControlItems, bool channel = false)
        {
            tabControlName = name;
            isChannel      = channel;
            // Container for header controls
            var dockPanel = new DockPanel();

            dockPanel.Children.Add(header);

            tb = tabControlItems;

            if (isChannel)
            {
                getMessageFromServer.ClientKickFromChannel += OnClientKickFromChannel;
                getMessageFromServer.ClientDeleteChannel   += OnClientDeleteChannel;
                getMessageFromServer.ClientBanFromChannel  += OnClientBanFromChannel;
                getMessageFromServer.ClientChannelLeave    += OnClientChannelLeave;
            }


            // Close button to remove the tab
            var closeButton = new TabCloseButton();

            closeButton.Click +=
                (sender, e) =>
            {
                if (tabControlName != "Main")
                {
                    tb.Remove(this);
                    if (isChannel)
                    {
                        clientSendToServer.SendToServer(Command.leaveChannel, tabControlName);
                    }
                }
                else
                {
                    MessageBox.Show("Cannot close Main Tab!", "Gold Chat: " + App.Client.strName, MessageBoxButton.OK, MessageBoxImage.Error);
                }
            };
            dockPanel.Children.Add(closeButton);

            // Set the header
            Header = dockPanel;
        }