Согласно вашей ошибке, ваш listNameTextField
просто UIView
.
Проверьте соединения в вашем xib
/ storyboard
.
Вы не можете изменить тип UIView
в раскадровке на UITextField
, поскольку раскадровка создает дополнительные свойства в xml для UITextField
.
Вместо этого вам нужно удалить исходный UIView
из раскадровки, добавить новый UITextField
и установить новое соединение.
Вот как я сделал нечто подобное (отформатировал и выровнял столбец валюты):
<GridViewColumn Header="Amount">
<GridViewColumn.CellTemplate>
<DataTemplate>
<TextBlock TextAlignment="Right"
Text="{Binding Path=Amount, StringFormat='{}{0:C}'}" />
</DataTemplate>
</GridViewColumn.CellTemplate>
</GridViewColumn>
Я также добавил этот стиль:
<Style TargetType="ListViewItem">
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style>
Если вы не используете .NET 3.5 SP1, вы вместо StringFormat необходимо использовать конвертер.
Чтобы иметь stringformat за валюту, например, можно использовать "StringFormat", который был представлен на объекте привязки в .net3.5 sp1, я думаю.
Text="{Binding XPath=Code, StringFormat=0.000}"
Помимо этого, я должен сказать, что не вполне понимаю Вашего вопроса также.