Hi,
Im trying to change the Group Appearence as follows:
this.ultraLiveTileViewMain.GroupAppearance.Active.FontData.Name = "Segoe UI"; this.ultraLiveTileViewMain.GroupAppearance.Active.ForeColor = Color.Red;
this.ultraLiveTileViewMain.GroupAppearance.Normal.FontData.Name = "Segoe UI"; this.ultraLiveTileViewMain.GroupAppearance.Normal.ForeColor = Color.Blue;
this.ultraLiveTileViewMain.GroupAppearance.HotTracking.FontData.Name = "Segoe UI"; this.ultraLiveTileViewMain.GroupAppearance.HotTracking.ForeColor = Color.Green;
Groups text still appears the same.
Ideas?
Thanks
Hello,
You are going to want to use the control's wizard to update the appearance properties on the tile and groups. Each of these objects contain their own appearance properties. More specifically the group contains TextAreaAppearance that contains Nomal, Active, HotTracking.
Please visit our documentation for more detailshttp://help.infragistics.com/doc/WinForms/2014.1/CLR4.0/?page=WinLiveTileView_Styling_WinLiveTileView.html
Let me know if you have any questions.
The tiles and groups we create are not known at design time so the wizard is not appropriate.
Setting a TileGroup's TextAreaAppearence font and colour do not work either.
What is GroupAppearnce for if its not for setting the Appearance of the group?
After investigating this some more I determined that the GroupAppearance for the LiveTileView is read-only. It's also accessible on the UltraListView which is editable.
The link I provided to our documentation provides examples of how you can modify the Group's text appearance and the items appearance within the tile by using the TextAreaAppearance and TileAppearance properties. These are what you want to use instead.
For ex.
tileGroup2.TextAreaAppearance.Normal.ForeColor = Color.Gold;
tileGroup.TileAppearance.Normal.ForeColor = Color.Gold;
Let me know if you have any questions regarding this matter. For more details about the GroupAppearance property please refer to this article in our documentation:
http://help.infragistics.com/doc/WinForms/2014.1/CLR4.0/?page=Infragistics4.Win.UltraWinLiveTileView.v14.1~Infragistics.Win.UltraWinLiveTileView.UltraLiveTileView~GroupAppearance.html
I was saving and loading the live tile view using LoadFromXml/SaveToXml which I though was only saving tile layout information, but is saves the appearances as well so when I was changing things nothing was being updated.
Incorrect description for SaveToXml on http://help.infragistics.com/doc/WinForms/2014.1/CLR4.0/?page=Infragistics4.Win.UltraWinLiveTileView.v14.1~Infragistics.Win.UltraWinLiveTileView.UltraLiveTileView~GroupAppearance.html
Craig
Hi Micheal,
TODO : "Making group text align center and change color according to the value"
I am also struggling with unable to change alignment of text to the Center position for all tiles within Group. I am adding First WideTile and then using two mediumTile
Below is my code but nothing is change. How to achieve it?
scheduleLotTileGroup.TextAreaAppearance.Normal.TextHAlign = Infragistics.Win.HAlign.Center
For i = 0 To dsScheduleLot.Tables(0).Rows.Count - 1 'Add wide tile to the group Dim scheduleLotLiveTile1 As LiveTile = scheduleLotTileGroup.Tiles.AddLiveTile("ScheduleLotWideTile" & i) scheduleLotLiveTile1.CurrentSize = TileSize.Wide
Dim scheduleLotLiveTileFrame1 As LiveTileFrameWide = scheduleLotLiveTile1.DefaultView.WideFrames.Add() Dim wideContent As New TileWideSmallImageAndText01 wideContent.TextHeadingWrap.Text = dsScheduleLot.Tables(0).Rows(i)("LOT").ToString() 'wideContent.TextBody1.Text = "" 'wideContent.TextBody2.Text = "" 'wideContent.TextBody3.Text = "" 'wideContent.TextBody4.Text = "" wideContent.Appearance.Normal.TextHAlign = Infragistics.Win.HAlign.Center wideContent.Appearance.Normal.TextVAlign = Infragistics.Win.VAlign.Middle scheduleLotLiveTileFrame1.Content = wideContent
'Add MediumTile1 to the group Dim scheduleLotLiveTile2 As LiveTile = scheduleLotTileGroup.Tiles.AddLiveTile("ScheduleLotMediumTile1_No:" & i) scheduleLotLiveTile2.CurrentSize = TileSize.Medium Dim scheduleLotLiveTileFrame2 As LiveTileFrameMedium = scheduleLotLiveTile2.DefaultView.MediumFrames.Add() Dim mediumTile1Content As New TileMediumText03() mediumTile1Content.TextBody1.Text = "DaysLeft" mediumTile1Content.TextBody2.Text = dsScheduleLot.Tables(0).Rows(i)("DaysLeft").ToString() mediumTile1Content.TextBody3.Text = "" mediumTile1Content.TextBody4.Text = "" mediumTile1Content.Appearance.Normal.TextHAlign = Infragistics.Win.HAlign.Center
If Not IsDBNull(dsScheduleLot.Tables(0).Rows(i)("DaysLeft")) Then If dsScheduleLot.Tables(0).Rows(i)("DaysLeft") < 40 Then mediumTile1Content.Appearance.Normal.ForeColor = Color.Red ElseIf dsScheduleLot.Tables(0).Rows(i)("DaysLeft") >= 40 And dsScheduleLot.Tables(0).Rows(i)("DaysLeft") <= 49 Then mediumTile1Content.Appearance.Normal.ForeColor = Color.Green ElseIf dsScheduleLot.Tables(0).Rows(i)("DaysLeft") >= 51 And dsScheduleLot.Tables(0).Rows(i)("DaysLeft") <= 59 Then mediumTile1Content.Appearance.Normal.ForeColor = Color.Blue ElseIf dsScheduleLot.Tables(0).Rows(i)("DaysLeft") >= 60 Then mediumTile1Content.Appearance.Normal.ForeColor = Color.White End If End If scheduleLotLiveTileFrame2.Content = mediumTile1Content
'Add MediumTile2 to the group Dim scheduleLotLiveTile3 As LiveTile = scheduleLotTileGroup.Tiles.AddLiveTile("ScheduleLotMediumTile2_No:" & i) scheduleLotLiveTile3.CurrentSize = TileSize.Medium Dim scheduleLotLiveTileFrame3 As LiveTileFrameMedium = scheduleLotLiveTile3.DefaultView.MediumFrames.Add() Dim mediumTile2Content As New TileMediumText03() mediumTile2Content.TextBody1.Text = "Status" mediumTile2Content.TextBody2.Text = dsScheduleLot.Tables(0).Rows(i)("Status").ToString() mediumTile2Content.TextBody3.Text = "" mediumTile2Content.TextBody4.Text = "" mediumTile2Content.Appearance.Normal.TextHAlign = Infragistics.Win.HAlign.Center scheduleLotLiveTileFrame3.Content = mediumTile2Content
Next
Thanks,
Priyansh