I have a XamDataGrid with columns that contain a different set of numbers depending on the row they are located in. For example, the first row contains the amount of money available for you. The second row contains the closing price of a stock from yesterday. The third row contains the live price and the change in price from yesterday. So it looks something like:
| Available | 1,000 |
| Previous | 88.00 |
| Live | 65.25 (-22.75) |
Is it possible to line up the data based on the decimal points? For example, the 88.00 would be directly over the 22.75 in the Live row and the last 2 00s from the Available row would be over the 22 and 88 respectively. I'm sure there has to be some style or converter out there but I can't seem to generate it.
also,how do I do it if the datatype is string
<Style TargetType="{x:Type igDP:CellValuePresenter}" x:Key="RightAlignedValueStyle" BasedOn="{StaticResource SmallCellValueStyle}" > <Setter Property="HorizontalContentAlignment" Value="Right" /> </Style>
This is the style i have added
<igDP:Field Name="ApproximatePrice" Label="Approximate price" Width="100"> <igDP:Field.Settings> <igDP:FieldSettings LabelPresenterStyle="{StaticResource MultilineHeader}" CellClickAction="SelectRecord" CellValuePresenterStyle="{StaticResource RightAlignedValueStyle}" /> </igDP:Field.Settings> </igDP:Field>
How do I right align the contents of xamdatagrid of type decimal?Please help me out, I want to display **currency which is of type decimal**. I want to have two decimal points (XXXX.XX)?
Hi Sohail,
I didn't see your question. I don’t know if you are returning the DataRecord or the Cell value to your converter or multiple cell values.
Let me pass this to you. It’s for an unbound field using multivalueconverter but the binding and the converter should be helpful to you. And there is a description of other binding you might consider.
<igDP:UnboundField Name="unboundCheckBox" >
<igDP:UnboundField.Settings>
<igDP:FieldSettings EditAsType="{x:Type sys:Boolean}">
<igDP:FieldSettings.CellValuePresenterStyle>
<Style TargetType="{x:Type igDP:CellValuePresenter}" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type igDP:CellValuePresenter}">
<CheckBox x:Name="unbCB">
<CheckBox.IsEnabled >
<MultiBinding Converter="{StaticResource IsEnabledConverter}">
<MultiBinding.Bindings>
<Binding />
<Binding RelativeSource="{RelativeSource Mode=TemplatedParent}"/>
<Binding Path="Cells[2].Value"/>
<Binding Path="Cells[3].Value"/>
</MultiBinding.Bindings>
</MultiBinding>
</CheckBox.IsEnabled>
<!--
<Binding Path="Cells[0].Value"/>
<Binding Path="Cells[1].Value"/>
<Binding Path="DataRecord"/>
<Binding Path="DataItem"/>
returns Context
returns DataRecord
returns specific cell values convert to string
return unset value
return null (there is no DataItem of Context)
-->
</CheckBox>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
</igDP:FieldSettings.CellValuePresenterStyle>
</igDP:FieldSettings>
</igDP:UnboundField.Settings>
</igDP:UnboundField>
public class checkBoxTagConverter : IMultiValueConverter
{
#region IMultiValueConverter Members
public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture)
if (values[0] == DependencyProperty.UnsetValue || values[1] == DependencyProperty.UnsetValue)
return Binding.DoNothing;
}
Field fld = values[0] as Field;
DataRecord rcd = values[1] as DataRecord;
if (null == fld || null == rcd)
return rcd.Cells[fld];
Hi,
Can you provide example/sample code for the converter which can be applied to the particular column of the xamdatagrid.
Regards,
Sohail Kazmi.