Tempatkan TextBox di kanan dan kiri (sehingga merenggang ketika ukuran induk diubah)

Saya mencari XAML yang setara dengan properti Anchor Winforms. Saya ingin memasang TextBox yang ada di Canvas (di aplikasi UWP) ke kiri dan kanan sehingga selalu 260 dari kiri dan 10 dari kanan. Saya telah mencoba banyak hal, namun yang tampaknya paling menjanjikan adalah:

<TextBox Height="Auto" Width="Auto" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"  TextWrapping="Wrap" Text="TextBox"  Margin="260,10,10,10"/>

Namun, ia tidak berlabuh ke kanan.


person ispiro    schedule 02.09.2015    source sumber
comment
Bisakah Anda menambahkan lebih banyak konteks ke XAML Anda? Definisi dari melampirkan wadah?   -  person Steve    schedule 02.09.2015
comment
@Steve Tidak ada yang istimewa - Kotak dengan Margin 0. di atasnya ada Kanvas dengan Margin 10 (dan warna latar belakang). Dan di atasnya - TextBox. Saya memastikan untuk menghapus semuanya agar tidak mengganggu. Dan ya, saya menjalankan programnya, tidak hanya memercayai perancangnya. Ketika saya mengubah ukuran Jendela - Kanvas diubah ukurannya, tetapi Kotak Teks tidak.   -  person ispiro    schedule 02.09.2015
comment
@Steve Terima kasih. Namun bagaimana cara mengubah Width="{Binding ActualWidth , ElementName=Canvas1}" menjadi mengikat ke Width - 270? (Mungkin pertanyaan mendasar, tapi saya baru memulai dengan XAML. Saya mencoba menambahkan - 270 tetapi tidak berhasil.)   -  person ispiro    schedule 02.09.2015


Jawaban (1)


Saya akan menggunakan 3 kolom Grid.

<Grid x:Name="YourOuterGrid">
    <Grid VerticalAlignment="Top">
        <Grid.ColumnDefinitions>
            <ColumnDefinition Width="160" />
            <ColumnDefinition Width="*" />
            <ColumnDefinition Width="10" />
        </Grid.ColumnDefinitions>
        <TextBox TextWrapping="Wrap" Grid.Column="1" />
    </Grid>
</Grid>
person Justin XL    schedule 02.09.2015
comment
Saya menerima ini (dan Anda pasti berhak mendapatkan tanggapan atas jawaban Anda atas pertanyaan dan komentar lainnya!) tetapi saya perhatikan bahwa menyetel Margins biasanya merupakan solusi di sini, kecuali bahwa saya tidak tahu bahwa Canvas itu spesial bahwa itu mengabaikan mereka. - person ispiro; 25.09.2015
comment
Anda benar sekali. Biasanya Anda hanya perlu mengatur Margin tetapi saya pikir Anda ingin wadah induk membungkusnya, maka jawabannya. :) - person Justin XL; 25.09.2015