/// <summary> /// Creates a new TextBlock, with default settings. /// </summary> /// <returns>The created TextBlock</returns> internal SelectableTextBlock CreateTextBlock(RenderContext context) { var result = new SelectableTextBlock { FontFamily = FontFamily, FontSize = FontSize, FontStretch = FontStretch, FontStyle = FontStyle, FontWeight = FontWeight, Foreground = context.Foreground, FlowDirection = FlowDirection }; return(result); }
private void tBtnAppend_Click(object sender, RoutedEventArgs e) { List <ItemsControl> ics = new List <ItemsControl>(); List <ToggleButton> btns = new List <ToggleButton>(); for (int i = 0; i < this.list.Items.Count; i++) { var item = this.list.ItemContainerGenerator.ContainerFromIndex(i); ItemsControl ic = FindSingleVisualChildren <ItemsControl>(item); ics.Add(ic); } List <List <SuperSelectableTextBlock> > superTextBlocks = new List <List <SuperSelectableTextBlock> >(); //List<List<SelectableTextBlock>> selectableTextBlocks = new List<List<SelectableTextBlock>>(); List <List <ToggleButton> > btnss = new List <List <ToggleButton> >(); foreach (ItemsControl child in ics) { List <SuperSelectableTextBlock> s = new List <SuperSelectableTextBlock>(); List <ToggleButton> t = new List <ToggleButton>(); //List<SelectableTextBlock> k = new List<SelectableTextBlock>(); for (int i = 0; i < child.Items.Count; i++) { var obj = child.ItemContainerGenerator.ContainerFromIndex(i); s.Add(FindSingleVisualChildren <SuperSelectableTextBlock>(obj)); t.Add(FindSingleVisualChildren <ToggleButton>(obj)); //k.Add(FindSingleVisualChildren<SelectableTextBlock>(obj)); } superTextBlocks.Add(s); btnss.Add(t); //selectableTextBlocks.Add(k); } ToggleButton btn = sender as ToggleButton; foreach (List <SuperSelectableTextBlock> child in superTextBlocks) { foreach (SuperSelectableTextBlock child1 in child) { if (child1.DataContext == btn.DataContext) { int j = child.IndexOf(child1); int i = superTextBlocks.IndexOf(child); SelectableTextBlock result = superTextBlocks[i][j]; if (btn.IsChecked == true) { child1.Height = double.NaN; //child1.Visibility = Visibility.Collapsed; //result.Visibility = Visibility.Visible; //result.TextTrimming = TextTrimming.None; //result.Height = double.NaN; //result.TextWrapping = TextWrapping.WrapWithOverflow; //MessageModel msg = (this.DataContext as ChatViewModel).StrangerMessageList[i].Chat.Messages[j]; //Binding binding = new Binding(); //binding.Source = msg; //binding.Path = new PropertyPath("Content"); //binding.Converter =new Converter.MessageToViewConverter(); //BindingOperations.SetBinding(result, SelectableTextBlock.ContentProperty, binding); } else { child1.Height = 30; //child1.Visibility = Visibility.Visible; //result.Visibility = Visibility.Collapsed; //result.Height = 30; } } } } }