Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Новый топик    Ответить
 Редактирование записи DataGrid в отдельном окне  [new]
DrunkCat
Member

Откуда:
Сообщений: 63
Блог
На главном окне есть DataGrid
<DataGrid Name="gridUsers" AutoGenerateColumns="False" SelectedIndex="0" IsReadOnly="True" SelectionMode="Single" CanUserSortColumns="True" SelectionChanged="GridUsersSelectionChanged">
            <DataGrid.Columns>
                <DataGridTextColumn Header="Фамилия" Binding="{Binding Path=Surname}" />
                <DataGridTextColumn Header="Роль" Binding="{Binding Path=Role.Name, Mode=OneWay}" />
            </DataGrid.Columns>
</DataGrid>
Окно редактирования отдельной записи
<Grid Margin="10" Name="gridUser" >
        <Label Grid.Row="1">Фамилия: </Label>
        <TextBox Grid.Column="1" Grid.Row="1" Text="{Binding Path=Surname}" />
         <ComboBox Grid.Row="3" Grid.Column="1" Name="boxRole" DisplayMemberPath="Name" SelectedValuePath="Id" SelectedValue="{Binding Path=RoleId, Mode=TwoWay}" />
</Grid>
При редактировании TextBox изменения передаются в главное окно и тут же отображаются при смене фокуса, а при выборе другого значения в ComboBox значение изменяется, но не отображается в главном окне.
Как решается эта проблема?

К сообщению приложен файл. Размер - 34Kb
4 окт 11, 12:55    [11380354]     Ответить | Цитировать Сообщить модератору
 Re: Редактирование записи DataGrid в отдельном окне  [new]
DrunkCat
Member

Откуда:
Сообщений: 63
Блог
Заменил в главном окне
<DataGridTextColumn Header="Роль" Binding="{Binding Path=Role.Name, Mode=OneWay}" />
на
<DataGridComboBoxColumn Header="Роль" x:Name="boxRole" DisplayMemberPath="Name" SelectedValuePath="Id"  SelectedValueBinding="{Binding Path=RoleId}"  />
В итоге все заработало как надо.
4 окт 11, 14:28    [11381386]     Ответить | Цитировать Сообщить модератору
Все форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM Ответить