Saat ini saya menggunakan di TextBlock
bawah ini untuk mengikat nilai properti bernama Name
:
<TextBlock Text="{Binding Name}" />
Sekarang, saya ingin mengikat properti lain dengan nama ID
yang sama TextBlock
.
Apakah mungkin untuk mengikat dua atau lebih nilai yang sama TextBlock
? Bisakah itu dilakukan dengan penggabungan sederhana, seperti Name + ID
dan, jika tidak, bagaimana lagi ini bisa didekati?
DataGrid
perilaku penyortiran sayangnya tidak berhasil. Solusi yang lebih tepat adalah membuat properti read-only dalam model Anda dengan format string yang sesuai untuk diikat. Tak perlu dikatakan, ini adalah cara yang rapi untuk dengan cepat memformat meskipun sedikit bertele-tele.XamlParseException: A 'Binding' cannot be set on the 'Path' property of type 'Binding'. A 'Binding' can only be set on a DependencyProperty of a DependencyObject.
Saya tahu ini terlambat, tetapi saya pikir saya akan menambahkan cara lain untuk melakukan ini.
Anda dapat memanfaatkan fakta bahwa properti Teks dapat diatur menggunakan " Run s", sehingga Anda dapat mengatur beberapa binding menggunakan Run untuk masing-masing. Ini berguna jika Anda tidak memiliki akses ke MultiBinding (yang saya tidak temukan ketika mengembangkan untuk Windows Phone)
sumber
Jika ini hanya akan menjadi textblock (dan dengan demikian salah satu cara mengikat), dan Anda hanya ingin menggabungkan nilai, cukup ikat dua textblock dan letakkan di stackpanel horizontal.
Itu akan menampilkan teks (yang semua Textblock lakukan) tanpa harus melakukan pengkodean lagi. Anda mungkin menempatkan sedikit margin pada mereka untuk membuatnya terlihat benar.
sumber
Gunakan ValueConverter
dan di markup
. . .
sumber