2009-08-17 10 views
0

Der folgende Code ist Teil einer kleinen XAML-Anwendung, die Daten in einer Tabellenform anzeigt. Grundsätzlich muss ich diesen Code in C# übersetzen.AccessText innerhalb Label (XAML zu C#)

<Grid Width="768" Height="1056"> 
    <Grid.RowDefinitions> 
     <RowDefinition Height="114" /> 
     <RowDefinition Height="906*" /> 
     <RowDefinition Height="36" /> 
    </Grid.RowDefinitions> 
... 
<Label Grid.Row="1" Width="40" Height="32" Margin="14,4,0,0" Padding="0" HorizontalAlignment="Left" VerticalAlignment="Top" HorizontalContentAlignment="Center" VerticalContentAlignment="Center" BorderBrush="Black" BorderThickness="1" Name="label16"> 
    <AccessText Margin="0,0,0,0" TextWrapping="Wrap" TextAlignment="Center" FontWeight="Bold"> 
     SEQ 
    </AccessText> 
</Label> 
... 
</Grid> 

Ich habe nach einer Antwort für ein paar Tage gesucht und ich kann nichts bestimmtes zu diesem finden. Kann mir bitte jemand eine Idee geben, wie es geht?

Danke

Antwort

2

ich eine Probe Window für Sie erstellt. Hier ist der Code-behind Sie suchen:

public Window1() 
{ 
    InitializeComponent(); 

    AccessText text = new AccessText() 
    { 
     Text = "SEQ", 
     Margin = new Thickness(0), 
     TextWrapping = TextWrapping.Wrap, 
     TextAlignment = TextAlignment.Center, 
     FontWeight = FontWeights.Bold 
    }; 

    Label label = new Label() 
    { 
     Content = text, 
     Width = 40, 
     Height = 32, 
     Margin = new Thickness(14, 4, 0, 0), 
     HorizontalAlignment = HorizontalAlignment.Left, 
     VerticalAlignment = VerticalAlignment.Top, 
     HorizontalContentAlignment = HorizontalAlignment.Center, 
     VerticalContentAlignment = VerticalAlignment.Center, 
     BorderBrush = Brushes.Black, 
     BorderThickness = new Thickness(1), 
     Name = "label16" 
    }; 

    Grid grid = new Grid(); 
    grid.Width = 768; 
    grid.Height = 1056; 
    grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(114) }); 
    grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(906, GridUnitType.Star) }); 
    grid.RowDefinitions.Add(new RowDefinition() { Height = new GridLength(36) }); 
    Grid.SetRow(label, 1); 
    grid.Children.Add(label); 

    this.Content = grid; 
} 

Dieses Beispiel zeigt, wie schön einfach XAML ist Benutzeroberflächen für die Konstruktion. :)

+0

Danke, Charlie. Es ist ein hervorragendes Beispiel, das du gepostet hast. Und es funktioniert tatsächlich in einer WPF-Anwendung für Windows und WPF-Browser-Anwendung. Sobald ich es in einer ASP.NET-Anwendung versuche, wird nichts angezeigt. Diese ASP.NET-Anwendung erstellt ein XPS-Dokument (FixedDocument) auf dem Server und sendet es dann als Stream zum Anzeigen an den Client. Gibt es etwas, von dem ich nicht weiß, dass es mit XPS (FixedDocument) oder ASP.NET zusammenhängt? Ich schätze deine Hilfe sehr. –

+0

Ich bin nicht ganz sicher über ASP.NET, da dies nicht mein Fachgebiet ist. Sie könnten versuchen, in einer separaten Frage danach zu fragen. Außerdem solltest du meine Antwort akzeptieren, wenn es dir geholfen hat! :) – Charlie

+0

Der Code funktioniert auch in ASP.NET gut. Es gab einen Fehler in meinem Code, der die Anwendung daran hinderte, den Text anzuzeigen. Danke nochmal. –