private void ColumnText_Loaded(object sender, RoutedEventArgs e)
        {
            SpreadsheetHeaderText textBox = sender as SpreadsheetHeaderText;
            DataGridColumnHeader  header  = UIHelper.FindVisualParent <DataGridColumnHeader>(sender as FrameworkElement);
            int col = grid.Columns.IndexOf(header.Column);

            textBox.data = data.columnDatas[col];
        }
        private void RowText_Loaded(object sender, RoutedEventArgs e)
        {
            SpreadsheetHeaderText textBox = sender as SpreadsheetHeaderText;
            DataGridRowHeader     header  = UIHelper.FindVisualParent <DataGridRowHeader>(sender as FrameworkElement);
            DataGridRow           gridRow = UIHelper.FindVisualParent <DataGridRow>(header);
            int row = (gridRow as DataGridRow).GetIndex();

            textBox.data = data.rowDatas[row];
        }
 private void RowHeader_PreviewMouseDown(object sender, MouseButtonEventArgs e)
 {
     if (e.LeftButton == MouseButtonState.Pressed)
     {
         SpreadsheetHeaderText textBox = UIHelper.FindVisualChild <SpreadsheetHeaderText>(sender as FrameworkElement);
         textBox.DispatchClickComponent();
         if (MainWindow.ClickComponentReceiveVariable.HasValue && MainWindow.ClickComponentReceiveVariable.Value)
         {
             e.Handled = true;
         }
     }
 }