Silverlight/wpf DataGrid TextBox 等控件内容 Binding 中日期格式 StringFormat
One of the new features in 3.5 SP1 is stringformat. The usage is pretty simple. So following are simple snippets showing its use
<TextBox Text="{Binding Path=Double, StringFormat=F3}"/> <TextBox Text="{Binding Path=Double, StringFormat=Amount: {0:C}}"/> <TextBox Text="{Binding Path=Double, StringFormat=Amount: \{0:C\}}"/> <TextBox> <TextBox.Text> <Binding Path="Double" StringFormat="{}{0:C}"/> </TextBox.Text> </TextBox>
<TextBox> <TextBox.Text> <MultiBinding StringFormat="{}{0:F2} = {1:D}"> <Binding Path="Double" /> <Binding Path="Date"/> </MultiBinding> </TextBox.Text> </TextBox> <TextBox> <TextBox.Text> <Binding Path="Date" StringFormat="{}{0:MM/dd/yyyy}"/> </TextBox.Text> </TextBox>
<ListBox Background="Beige" ItemStringFormat="F3"> <sys:Double>1.11122</sys:Double> <sys:Double>2.11345</sys:Double> </ListBox> <GroupBox Background="AliceBlue" Content="{Binding Path=Double}" ContentStringFormat="F4" Header="{Binding Path=Double}" HeaderStringFormat="F5"/> <Label Content="{Binding Path=Double}" ContentStringFormat="{}{0:E2}"/>
-- <GridView> <GridViewColumn Header="Date" DisplayMemberBinding="{Binding XPath=Date, StringFormat=D}" />
--
<sdk:DataGrid Name="dgTable" AutoGenerateColumns="False" >
<sdk:DataGrid.Columns>
<sdk:DataGridTextColumn Header="时间" Binding="{Binding createdate, StringFormat=yyyy-MM-dd}" />
<sdk:DataGridTextColumn Header="时间1" >
<sdk:DataGridTextColumn.Binding>
<Binding Path="createdate" StringFormat="{}{0:MM/dd/yyyy}"/>
</sdk:DataGridTextColumn.Binding>
</sdk:DataGridTextColumn>
<sdk:DataGridTextColumn Header="时间2" Binding="{Binding createdate, StringFormat=\{0:yyyy-MM-dd HH:mm:ss\}}" />