2016-08-16 2 views
1

Ich bin neu in xamarin.i accordian Kontrolle in Xamarin forms.i zu schaffen versuchen also.in, bei der Start-Ebene geschaffen hatte ich nur die Tasten gelegt hatte und beschriftet wie dieseXamarin Screen-Design von Code hinter

enter image description here

für Demo purpose.this ist i von Code

var vViewLayout1 = new StackLayout() 
     { 
      Children = { 
       new Label { Text = "Regular Board Meeting",HorizontalOptions=LayoutOptions.Center }, 

       new StackLayout 
       { 
        Spacing = 5, 
        Orientation = StackOrientation.Horizontal, 
        VerticalOptions= LayoutOptions.Center, 
        HorizontalOptions= LayoutOptions.End, 

         Children = 
         { 
          new Image { Source = "Chat.png"}, 
          new Button { Text ="Reject",BackgroundColor = Color.Red,TextColor = Color.White}, 
          new Button { Text ="Approve",BackgroundColor = Color.Green,TextColor = Color.White} 
         } 
       }, 
       //new Label { Text = "Name : S Ravi Kumar" }, 
       //new Label { Text = "Roles : Father,Trainer,Consultant,Architect" } 
      } 
     }; 
var vFirstAccord = new AccordionSource() 
     { 
      HeaderText = "ReportToBoardJune 1,2016", 
      HeaderTextColor = Color.White, 
      HeaderBackGroundColor = Color.Red, 
      ContentItems = vViewLayout1 
     }; 

return vResult; 

aber ich möchte zeigen Daten so wie diese enter image description here

behind.like diesem

binded

also, wie kann ich dies aus code hinterher schaffen.und welche steuerung ich für box verwenden sollte, die ich highlighed von red arrow.boxview oder irgendeinen anderen in xamarine wie tisch oder sonst noch verfügbar.

ich habe gerade angefangen xamarin.so ich habe keine Ahnung von seinen Kontrollen.irgendein Vorschlag oder Hilfe ist apriciated.thanks im Voraus.

+1

Ich denke, a [Grid] (https://developer.xamarin.com/api/type/Xamarin.Forms.Grid/) würde Ihren Anforderungen für die von Ihnen markierte Box entsprechen. Sie können ein 3x3-Raster mit Zellen gleichmäßiger Größe konfigurieren und Ihre Beschriftungen dort hinzufügen, wo sie hingehören. Dieses API-Dokument enthält ein Beispiel für die Verwendung des Grids aus dem Code dahinter. – dylansturg

+0

ja .. ich benutzte. grid.but aber wie kann Grenze um es von Code her machen? –

+0

Ich kann Grenzeigenschaft des Gitters –

Antwort

1

Basierend auf den Kommentaren werden Sie Raster zu verwenden, und Ihre Frage ist jetzt im Wesentlichen Wie kann ich einen Rahmen um das Raster im Code hinter der Datei machen?

Es gibt keine bestimmte Rahmeneigenschaft für Raster, wie Sie festgestellt haben. Was ich habe ein paar Mal getan ist, ein einfaches 3x3 Raster erstellen, und 4 platziert boxviews an den Rändern:

BoxView border() 
{ 
    BoxView res = new BoxView 
    { 
     Color = Color.Black, 
     HeightRequest = 4, 
     WidthRequest = 4 
    } 
    return res; 
} 

Grid gridWithBorder = new Grid 
{ 
    RowDefinitions = 
     { 
      new RowDefinition { Height = GridLength.Auto}, 
      new RowDefinition { Height = GridLength.Auto}, 
      new RowDefinition { Height = GridLength.Auto} 
     }, 
    ColumnDefinitions = 
     { 
      new ColumnDefinition { Width = GridLength.Auto }, 
      new ColumnDefinition { Width = GridLength.Auto }, 
      new ColumnDefinition { Width = GridLength.Auto } 
     } 
}; 

gridWithBorder.Children.Add(border(), 0, 3, 0, 1); //add top border 
gridWithBorder.Children.Add(border(), 0, 1, 0, 3); // left border 
gridWithBorder.Children.Add(border(), 0, 3, 2, 3); // bottom border 
gridWithBorder.Children.Add(border(), 2, 3, 0, 3); // right 

Danach ich den Rest des Layouts fügen Sie dann auf Reihe 1 Spalte 1

+0

soory ich verstehe Ihre Struktur nicht.Kann Sie exaplin in Kürze.? –

+0

sollte ich 2 zusätzliche Zeilendefinition und Spaltendefinition in meine Rasterstruktur aufnehmen und dort sollte ich Boxview setzen? –

+0

@NeelamPrajapati Ja, die zwei zusätzlichen Spalten und Zeilen, die erstellt wurden, werden von den Boxviews übernommen. In den Zeilen "gridWithBorder.Children.Add" wird angegeben, welche Ansicht Sie hinzufügen, welche Spalte, Zeile und wie viele Spalten oder Zeilen es überspannt. –