///<summary> Создание элемента для котактов </summary>
        private Grid CreateContactControl(ModelUserContact modelUserContact)
        {
            var grid = new Grid();

            var stackPanel = new StackPanel {
                Height = 36, Orientation = Orientation.Horizontal, HorizontalAlignment = HorizontalAlignment.Left
            };

            grid.Children.Add(stackPanel);

            stackPanel.Children.Add(new TextBlock {
                VerticalAlignment = VerticalAlignment.Center, Text = @"d-sip", Foreground = Brushes.Gray
            });

            stackPanel.Children.Add(new TextBlock {
                Margin = new Thickness(10, 0, 0, 0), VerticalAlignment = VerticalAlignment.Center, FontWeight = FontWeights.Bold, Text = modelUserContact.IdentityString
            });

            var imagePhone = new Image {
                Height = 19, Margin = new Thickness(0, 8, 0, 8), Source = UtilityPicture.GetBitmapImageFromStringUri("/Resources/phone_offline.png")
            };

            var button = new Button {
                VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Right, Style = Application.Current.TryFindResource(@"ButtonStyleTransparent") as Style, Content = imagePhone
            };

            button.Click += (sender, args) => ContactNumberButtonCall(modelUserContact.Identity);

            grid.Children.Add(button);

            return(grid);
        }
Exemplo n.º 2
0
        /// <summary> Создание элемента для котактных номеров </summary>
        private Grid CreateContactControl(ModelUserContact modelUserContact)
        {
            var grid = new Grid {
                Margin = new Thickness(0, 0, 0, 10), ColumnDefinitions = { new ColumnDefinition {
                                                                               Width = GridLength.Auto
                                                                           }, new ColumnDefinition(), new ColumnDefinition{
                                                                               Width = GridLength.Auto
                                                                           } }
            };

            var comboBox = new ComboBox {
                Margin = new Thickness(0, 0, 10, 0), Width = 180, ItemsSource = _viewModelManualContact.ListModelEnumUserContactType, DisplayMemberPath = @"Name"
            };

            var bindingComboBox = new Binding {
                Source = modelUserContact, Path = new PropertyPath("ModelEnumUserContactTypeObj")
            };

            comboBox.SetBinding(ComboBox.SelectedItemProperty, bindingComboBox);

            var textBox = new TextBox();

            var bindingTextBox = new Binding {
                Source = modelUserContact, Path = new PropertyPath("Identity")
            };

            textBox.SetBinding(TextBox.TextProperty, bindingTextBox);
            textBox.PreviewTextInput += TextBoxPreviewTextInput;
            textBox.TextChanged      += TextBoxOnTextChanged;
            textBox.CommandBindings.Add(new CommandBinding(ApplicationCommands.Paste, OnPasteCommand)); // нужно для запрета вставки по Ctrl+V если оставить обработчик пустым

            Grid.SetColumn(textBox, 1);

            var image = new Image {
                Margin = new Thickness(0, 1, 0, 0), Height = 11, Source = UtilityPicture.GetBitmapImageFromStringUri(@"/Resources/cancel.png")
            };
            var button = new Button {
                Margin = new Thickness(5, 0, 0, 0), Content = image, VerticalContentAlignment = VerticalAlignment.Center, Style = Application.Current.TryFindResource(@"ButtonStyleTransparent") as Style
            };

            button.DataContext = modelUserContact;
            button.Click      += (sender, args) => _viewModelManualContact.RemoveUserContact((sender as Button)?.DataContext as ModelUserContact);

            Grid.SetColumn(button, 2);

            grid.Children.Add(comboBox);
            grid.Children.Add(textBox);
            grid.Children.Add(button);

            return(grid);
        }
Exemplo n.º 3
0
        /// <summary> Создание элемента для моих котактов </summary>
        private StackPanel CreateContactMyControl(ModelUserContact modelUserContact)
        {
            var stackPanel = new StackPanel {
                Height = 36, Orientation = Orientation.Horizontal
            };

            stackPanel.Children.Add(new TextBlock {
                VerticalAlignment = VerticalAlignment.Center, Text = @"d-sip", Foreground = Brushes.Gray
            });

            stackPanel.Children.Add(new TextBlock {
                Margin = new Thickness(10, 0, 0, 0), VerticalAlignment = VerticalAlignment.Center, FontWeight = FontWeights.Bold, Text = modelUserContact.IdentityString
            });

            return(stackPanel);
        }
Exemplo n.º 4
0
        /// <summary> Создание элемента для дополнительных котактов </summary>
        private StackPanel CreateExtraContactControl(ModelUserContact modelUserContact)
        {
            var stackPanel = new StackPanel {
                Height = 36, Orientation = Orientation.Horizontal
            };

            var textBlock = new TextBlock {
                VerticalAlignment = VerticalAlignment.Center, Foreground = Brushes.Gray
            };

            textBlock.SetResourceReference(TextBlock.TextProperty, @"ViewUserDetail_Phone");

            stackPanel.Children.Add(textBlock);

            stackPanel.Children.Add(new TextBlock {
                Margin = new Thickness(10, 0, 0, 0), VerticalAlignment = VerticalAlignment.Center, FontWeight = FontWeights.Bold, Text = modelUserContact.IdentityString
            });

            return(stackPanel);
        }
Exemplo n.º 5
0
        /// <summary> Создание элемента для дополнительных котактов </summary>
        private Grid CreateContactExtraControl(ModelUserContact modelUserContact, ModelContact currentModelContact)
        {
            var grid = new Grid();

            var stackPanel = new StackPanel {
                Height = 36, Orientation = Orientation.Horizontal, HorizontalAlignment = HorizontalAlignment.Left
            };

            grid.Children.Add(stackPanel);

            var textBlock = new TextBlock {
                VerticalAlignment = VerticalAlignment.Center, Foreground = Brushes.Silver
            };

            textBlock.SetResourceReference(TextBlock.TextProperty, @"ViewCallRedirect_Phone");

            stackPanel.Children.Add(textBlock);

            stackPanel.Margin = new Thickness(20, 10, 10, 10);

            stackPanel.Children.Add(new TextBlock {
                Margin = new Thickness(20, 0, 0, 0), VerticalAlignment = VerticalAlignment.Center, Text = modelUserContact.IdentityString
            });

            var imagePhoneTransfer = new Image {
                Height = 19, Margin = new Thickness(0, 8, 0, 8), Source = UtilityPicture.GetBitmapImageFromStringUri("/Resources/transfer_default_offline.png")
            };

            var button = new Button {
                VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Right, Style = Application.Current.TryFindResource(@"ButtonStyleTransparent") as Style, Content = imagePhoneTransfer
            };

            button.Click += (sender, args) => ContactExtraNumberTransferCall(modelUserContact.Identity);

            grid.Children.Add(button);

            return(grid);
        }
Exemplo n.º 6
0
        /// <summary> Создание элемента для моих котактов </summary>
        private Grid CreateContactControl(ModelUserContact modelUserContact, ModelContact currentModelContact)
        {
            var grid = new Grid();

            var stackPanel = new StackPanel {
                Height = 36, Orientation = Orientation.Horizontal, HorizontalAlignment = HorizontalAlignment.Left
            };

            grid.Children.Add(stackPanel);

            var imagePhone = new Image {
                Height = 19, Margin = new Thickness(0, 8, 0, 8)
            };

            var button = new Button {
                VerticalAlignment = VerticalAlignment.Center, HorizontalAlignment = HorizontalAlignment.Right, Style = Application.Current.TryFindResource(@"ButtonStyleTransparent") as Style, Content = imagePhone
            };

            button.Click += (sender, args) => ContactNumberTransferCall(modelUserContact.Identity);

            _listImageSip.Add(imagePhone);

            //      stackPanel.Children.Add(new Image { VerticalAlignment = VerticalAlignment.Center, Height = 19, Margin = new Thickness(5), Source = favouriteBitmapImage });

            stackPanel.Margin = new Thickness(20, 10, 10, 10);

            stackPanel.Children.Add(new TextBlock {
                VerticalAlignment = VerticalAlignment.Center, Text = @"d-sip", Foreground = Brushes.Silver
            });

            stackPanel.Children.Add(new TextBlock {
                Margin = new Thickness(40, 0, 0, 0), VerticalAlignment = VerticalAlignment.Center, Text = modelUserContact.IdentityString
            });

            grid.Children.Add(button);

            return(grid);
        }
Exemplo n.º 7
0
        /// <summary> Метод удаляющий телефонный номер </summary>
        public void RemoveUserContact(ModelUserContact modelUserContact)
        {
            CurrentModelContact.ListModelUserContactExtra.Remove(modelUserContact);

            ChangedListModelUserContactExtra?.Invoke(this, EventArgs.Empty);
        }