title: DataGrid cell ToolTip based on the column's data
body: <p>In my application, i have tried to implement tooltip wich will show me some errors in the datagrid based on the dataGrid Column's text. For sample I have 4 columns with text-boxes for entering some data and if data in the some column doesn't much the rule or if some of them are empty on the last 4th column i should show tooltip with some explanation text.</p>
  
  <pre><code>&lt;WpfToolkit:DataGridTemplateColumn Width="0.02*" IsReadOnly="True"&gt;
            &lt;WpfToolkit:DataGridTemplateColumn.CellStyle&gt;
              &lt;Style TargetType="{x:Type WpfToolkit:DataGridCell}" BasedOn="{StaticResource TransparentCellSelection}"&gt;
                &lt;Style.Triggers&gt;
  
                  &lt;DataTrigger Value="1"&gt;
                    &lt;DataTrigger.Binding&gt;
                      &lt;MultiBinding Converter="{StaticResource DataGridRowToolTipConverter}"&gt;
                        &lt;Binding Path="IsRequired" /&gt;
                        &lt;Binding Path="InputColumns.Count" /&gt;
                        &lt;Binding Path="HasDefaultValue" /&gt;
                        &lt;Binding Path="HasOverwritingValue" /&gt;
                        &lt;Binding Path="MappingType" /&gt;
                        &lt;Binding Path="SourceColumnMappings" /&gt;
                        &lt;Binding Path="ColumnStatus" /&gt;
                      &lt;/MultiBinding&gt;
                    &lt;/DataTrigger.Binding&gt;
                    &lt;Setter Property="ToolTip" Value="Translation mapping is incomplete." /&gt;
                  &lt;/DataTrigger&gt;
  
                  &lt;DataTrigger Value="2"&gt;
                    &lt;DataTrigger.Binding&gt;
                      &lt;MultiBinding Converter="{StaticResource DataGridRowToolTipConverter}"&gt;
                        &lt;Binding Path="IsRequired" /&gt;
                        &lt;Binding Path="InputColumns.Count"/&gt;
                        &lt;Binding Path="HasDefaultValue" /&gt;
                        &lt;Binding Path="HasOverwritingValue" /&gt;
                        &lt;Binding Path="MappingType" /&gt;
                        &lt;Binding Path="SourceColumnMappings" /&gt;
                        &lt;Binding Path="ColumnStatus" /&gt;
                      &lt;/MultiBinding&gt;
                    &lt;/DataTrigger.Binding&gt;
                    &lt;Setter Property="ToolTip" Value="Overwriting Value overrides Mapping. Mapping and Default Value are ignored." /&gt;
                  &lt;/DataTrigger&gt;
  
                  &lt;DataTrigger Value="3"&gt;
                    &lt;DataTrigger.Binding&gt;
                      &lt;MultiBinding Converter="{StaticResource DataGridRowToolTipConverter}"&gt;
                        &lt;Binding Path="IsRequired" /&gt;
                        &lt;Binding Path="InputColumns.Count" /&gt;
                        &lt;Binding Path="HasDefaultValue" /&gt;
                        &lt;Binding Path="HasOverwritingValue" /&gt;
                        &lt;Binding Path="MappingType" /&gt;
                        &lt;Binding Path="SourceColumnMappings" /&gt;
                        &lt;Binding Path="ColumnStatus" /&gt;
                      &lt;/MultiBinding&gt;
                    &lt;/DataTrigger.Binding&gt;
                    &lt;Setter Property="ToolTip" Value="Default Value cannot be set for empty Mapping. Please define Mapping or use Overwriting Value instead of Default Value." /&gt;
                  &lt;/DataTrigger&gt;
  </code></pre>
  
  <p>Does anybody know best way to do it?</p>