private void conBtn_Click(object sender, RoutedEventArgs e)
        {
            if (loginTextBox.Text.Trim() == "")
            {
                MessageBox.Show("Najpierw wpisz login!", "Błąd logowania", MessageBoxButton.OK, MessageBoxImage.Information);
            }
            else if (channel != null)
            {
                try
                {
                    channel.Close();
                }
                catch (Exception) { }
                Wylogowany();
            }
            else
            {
                factory.Endpoint.Address = new EndpointAddress("net.tcp://" + addressTextBox.Text);
                channel = factory.CreateChannel();
                if (channel.State == CommunicationState.Opened)
                {
                    MessageBox.Show("Połączenie jest już nawiązane.", "Informacja", MessageBoxButton.OK,
                                    MessageBoxImage.Information);
                }
                else
                {
                    try
                    {
                        channel.Open();


                        switch (channel.Logowanie(loginTextBox.Text, passwordBox.Password))
                        {
                        case WiadomoscZwrotna.Niepomyslnie:
                            MessageBox.Show("Logowanie zakończone niepowodzeniem.", "Bład logowania",
                                            MessageBoxButton.OK, MessageBoxImage.Error);
                            channel.Close();
                            Wylogowany();
                            break;

                        case WiadomoscZwrotna.Pomyslnie:
                            Zalogowany();
                            channel.Closed  += (o, args) => Wylogowany();
                            channel.Faulted += (o, args) => Wylogowany();
                            break;
                        }
                    }
                    catch (Exception f)
                    {
                        MessageBox.Show("Nie mozna nawiązać połączenia, powód: " + f.Message, "Błąd połączenia", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
            }
        }
        private void conBtn_Click(object sender, RoutedEventArgs e)
        {
            if (loginTextBox.Text.Trim() == "")
            {
                MessageBox.Show("Type login first!", "Logging error", MessageBoxButton.OK, MessageBoxImage.Information);
            }
            else if (channel != null)
            {
                try
                {
                    channel.Close();
                }
                catch (Exception) { }
                Wylogowany();
            }
            else
            {
                factory.Endpoint.Address = new EndpointAddress("net.tcp://" + addressTextBox.Text);
                channel = factory.CreateChannel();
                if (channel.State == CommunicationState.Opened)
                {
                    MessageBox.Show("Client is already connected.", "Informantion", MessageBoxButton.OK,
                                    MessageBoxImage.Information);
                }
                else
                {
                    try
                    {
                        channel.Open();


                        switch (channel.Logowanie(loginTextBox.Text, passwordBox.Password))
                        {
                        case WiadomoscZwrotna.Niepomyslnie:
                            MessageBox.Show("Logging failed.", "Logging error",
                                            MessageBoxButton.OK, MessageBoxImage.Error);
                            channel.Close();
                            Wylogowany();
                            break;

                        case WiadomoscZwrotna.Pomyslnie:
                            Zalogowany();
                            channel.Closed  += (o, args) => Wylogowany();
                            channel.Faulted += (o, args) => Wylogowany();
                            break;
                        }
                    }
                    catch (Exception f)
                    {
                        MessageBox.Show("Cannot establish connection, reason: " + f.Message, "Connection error", MessageBoxButton.OK, MessageBoxImage.Error);
                    }
                }
            }
        }
        private void Wylogowany()
        {
            conBtn.Content           = "Połącz";
            channel                  = null;
            addressTextBox.IsEnabled = true;
            loginTextBox.IsEnabled   = true;
            passwordBox.IsEnabled    = true;
            userInfoBlock.Text       = "Zaloguj się, aby zobaczyć więcej informacji.";

            typWidoku.IsEnabled     = false;
            odswiezBtn.IsEnabled    = false;
            typWidoku.SelectedIndex = 4;
            dodajNowy.IsEnabled     = false;
            usun.IsEnabled          = false;
            usunId.IsEnabled        = false;
        }
        private void Wylogowany()
        {
            conBtn.Content           = "Connect";
            channel                  = null;
            addressTextBox.IsEnabled = true;
            loginTextBox.IsEnabled   = true;
            passwordBox.IsEnabled    = true;
            userInfoBlock.Text       = "Login to see more user information.";

            typWidoku.IsEnabled     = false;
            odswiezBtn.IsEnabled    = false;
            typWidoku.SelectedIndex = 4;
            dodajNowy.IsEnabled     = false;
            usun.IsEnabled          = false;
            usunId.IsEnabled        = false;
        }