title: Align text in TableColumn /Paragraph
body: <p>It possible vertical  align text in TableColumn on middle?</p>
  
  <p>I add  paragraph to the table cell of table. And this table I add to richTexBox control.
  Problem is that middle column consists of  images(emoticons) and it is "align  to the  vertical center".</p>
  
  <p>It’s difficult for me to describe it. </p>
  
  <p>Here is an image:</p>
  
  <p><img src="https://i.stack.imgur.com/8uGcw.jpg" alt="alt text"> </p>
  
  <p>I would like align first and third column vertical on the middle. I want text in this 3 columns on the same "level:.</p>
  
  <p>Func which create Table with this 3 columns is here:</p>
  
  <pre><code>    public Table ConvertToTabRp(IRp rp, string avatarNick)
      {
          var tempRp = new Rp { RpText = rp.RpText, Nick = rp.Nick, Time = rp.Time, Your = rp.Your };
  
          if (tempRp.Your)
              tempRp.Nick = avatarNick;
  
          string time = string.Format(CultureInfo.CurrentCulture, "{0}", DateTime.ParseExact(tempRp.Time, "yyyy-MM-dd HH:mm:ss", null)
              .ToString("dd-MM-yyyy HH:mm:ss").Replace("-", "."));
  
          var tab = new Table {Margin = new Thickness(0, 0, 0, 0)};
  
          var gridLenghtConvertor = new GridLengthConverter();
  
          //1. col
          tab.Columns.Add(new TableColumn { Name = "colNick", Width = (GridLength)gridLenghtConvertor.ConvertFromString("100") });
          //2.col
          tab.Columns.Add(new TableColumn { Name = "colMsg", Width = (GridLength)gridLenghtConvertor.ConvertFromString("Auto") });
          //3.col
          tab.Columns.Add(new TableColumn { Name = "colDt", Width = (GridLength)gridLenghtConvertor.ConvertFromString("150") });
  
          tab.RowGroups.Add(new TableRowGroup());
          tab.RowGroups[0].Rows.Add(new TableRow());
  
          var tabRow = tab.RowGroups[0].Rows[0];
  
          //1.col - NICK
          var pNick = new Paragraph(new LineBreak()) { TextAlignment = TextAlignment.Left };
          pNick.Inlines.Add(new Run(tempRp.Nick));
  
          if (!tempRp.Your)
          {
              pNick.Foreground = Brushes.DodgerBlue;
          }
          tabRow.Cells.Add(new TableCell(pNick));
  
          //2.col - MESSAGE
          tabRow.Cells.Add(new TableCell(ConvertToRpWithEmoticons(tempRp.RpText)) { TextAlignment = TextAlignment.Left});
  
          //3.col  - DATE TIME
          var pTime = new Paragraph(new LineBreak()) { TextAlignment = TextAlignment.Right };
          pTime.Inlines.Add(time);
          tabRow.Cells.Add(new TableCell(pTime));
  
          return tab;
  
      }
  </code></pre>
  
  <p>maybe solution can be:</p>
  
  <pre><code>        var pNick = new Paragraph(new LineBreak()) { TextAlignment = TextAlignment.Left , **VerticalTextAligment = Center** };
  </code></pre>
  
  <p>I don’t how vertical align in paragraph.</p>
  
  <p><strong>EDIT:</strong></p>
  
  <p>Maybe is problem in way how I add image to paragraph, here is it code:</p>
  
  <pre><code>            var image = new Image
              {
                  Source = new BitmapImage(new Uri(path, UriKind.RelativeOrAbsolute)),
                  Width = 20,
                  Height = 20,
              };
              para.Inlines.Add(new Run(separatemsg.Text) { BaselineAlignment = BaselineAlignment.TextBottom });
              //insert smile
              para.Inlines.Add(new InlineUIContainer(image) {BaselineAlignment = BaselineAlignment.Bottom});
  </code></pre>
  
  <p>and this paragraph is add to 2. column.</p>