WPF - Kann ich aufhören Usercontrol seinen Namen untergeordneten Elemente ausgesetzt wird?

StackOverflow https://stackoverflow.com/questions/655265

Frage

Dies ist ein bisschen wie eine Noob Frage, aber ich habe gemerkt, dass, wenn ich erstelle ein Benutzersteuerelement, und wählen Sie einige ihrer untergeordneten Elemente a la nennen -

<UserControl x:Class="UserControls.uControl"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="300" Width="300">
<Grid x:Name="maingrid">

</Grid>

dann kann ich die genannten Elemente in dem Code-behind der konsumiere XAML verweisen. So zum Beispiel oben i schreiben könnte

uControl.mainGrid = new Grid();

Ich bin neugierig, warum dies der Fall ist und was noch wichtiger ist, wie kann ich diese Kontrollen sicher einkapseln kann.

Wie üblich, jede mögliche Hilfe wäre wirklich zu schätzen.

War es hilfreich?

Lösung

Was Sie wollen, ist das x:FieldModifier Attribut:

<UserControl x:Class="UserControls.uControl" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="300" Height="300">
    <Grid x:Name="maingrid" x:FieldModifier="private">
    </Grid>
</UserControl>

Die Standardeinstellung ist interne , aus irgendeinem Grund. Sie können mehr darüber lesen hier .

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top