|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
Как ручками править значение, если это первая запись (пустой ДатаСет)? this.tblSome.Rows[0]["ProcessID"] = this.ProcessID; <- нет еще Rows[0] this.BindingContext[tblSome].EndCurrentEdit(); <- А здесь уже ошибка, что ProcessID недолжен быть Null Т.е. я отобразил редактор и сделал: this.BindingContext[tblSome].EndCurrentEdit(); this.BindingContext[tblSome].AddNew(); После этого ввел новые значения и хочу править "ProcessID". Как это провернуть? Не делать же ProcessID.AllowDBNull = True??? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 16:06 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
Код: plaintext 1. 2. 3.
а зачем ты работаешь через BindingContext ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 16:17 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
А чем ненравится? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 16:18 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
писанины много, а толку чуть ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 16:25 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
Я несовсем понял. Как можно решить этот вопрос другим образом? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 16:31 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
так тебе же код привел: 1. создаешь пустую запись для таблицы. в состоянии deattached на неё не распространяются constraint'ы таблицы и dataset 2. заполняешь поля этой записи 3. добавляешь ее в таблицу а все databinding'и это изменение отловят, т.к. они подписаны на события изменения данных в источнике. и, соотвественно, все привязанные контролы будут сразу же показывать эти изменения. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 16:37 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
1. создаешь пустую запись для таблицы. в состоянии deattached на неё не распространяются constraint'ы таблицы и dataset deattached что за состояние ??? 2. заполняешь поля этой записи 3. добавляешь ее в таблицу У меня, вроде, таже кутерьма: this.BindingContext[tblSome].AddNew(); .... заполянет(изменяет) пользователь this.BindingContext[tblSome].EndCurrentEdit(); а все databinding'и это изменение отловят, т.к. они подписаны на события изменения данных в источнике. и, соотвественно, все привязанные контролы будут сразу же показывать эти изменения. Меня это устраивает. Единственное, я немогу править запись!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 16:45 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
авторЕдинственное, я немогу править записьа без этого тебе это надо ? не хотел, но придется MS: CurrencyManager.AddNewYou typically use this property only if you are creating your own control incorporating the CurrencyManager . Otherwise, to add items, if the data source is a DataView, use the AddNew method of the DataView class. If the data source is a DataTable, use the NewRow method and add the row to the DataRowCollection. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 17:06 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
кузя авторЕдинственное, я немогу править записьа без этого тебе это надо ? не хотел, но придется MS: CurrencyManager.AddNewYou typically use this property only if you are creating your own control incorporating the CurrencyManager . Otherwise, to add items, if the data source is a DataView, use the AddNew method of the DataView class. If the data source is a DataTable, use the NewRow method and add the row to the DataRowCollection. this.BindingContext[this.dsMain,"tblSome"].EndCurrentEdit(); А это тогда срабатывает как - DataView? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 17:13 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
для DataView метод AddNew Код: plaintext 1. 2.
... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 17:30 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
Я хотел сказать, что новая запись: BindingContext[dsMain,"tblSome"].EndCurrentEdit(); BindingContext[dsMain,"tblSome"].AddNew(); и ее сохранение и изменения BindingContext[this.dsMain,"tblSome"].EndCurrentEdit(); dsMain.Tables["tblSome"].Rows[0]["ParentID"] = ParentID; sdaSomeAdapter.Update(this.dsMain, "tblSome"); работает без каких либо ексессов :( Почему изменение DataSet+DataMember на DataTable - все слетает ??? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 17:47 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
Почему изменение DataSet+DataMember на DataTable - все слетает ???извини, не понял. что и где слетает ? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 18:09 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
BindingContext[] может принимать DataSource или DataSource+DataMember. Если передавать Dataset c указанием DataMember (см. пример выше) - все хорошо работает: т.е. нормально заканчивается редактирование и я спокойно правлю необходимый мне параметр. Если же я передаю только DataTable - вылетает ошибка, что SomeField неможет быть null. ...и я застрял меж трех берез... ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 18:20 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
если ты про BindingContext - то это реально другой binding. т.е. BindingContext[dataSet, tableName] != BindingContext[dataTable] чтобы все работало как надо (в смысле - синхронно) - нужно "умудриться" все контролы на форме посадить на один и тот же DataSource. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 18:20 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
если ты про BindingContext - то это реально другой binding. т.е. BindingContext[dataSet, tableName] != BindingContext[dataTable] Дык, я уже понял что все сие разное :(( Но я думал, что за логично было бы, если BindingContext[dataSet, tableName] = BindingContext[dataTable] т.е. dataSet, tableName возвращает необходимый dataTable ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 18:28 |
|
tblSome.Rows[0]["SomeField"] если Rows.Count = 0 ???
|
|||
---|---|---|---|
#18+
в конечном итоге - на каком варианте остановиться и доводить до ума - это твоё дело как разработчика. мой выбор был/остается - см. 2-й (+6-й) посты. обоснований не привожу (чуток уже было), т.к. обосновать можно и черта лысого, было бы желание ... |
|||
:
Нравится:
Не нравится:
|
|||
10.08.2004, 18:46 |
|
|
start [/forum/moderation_log.php?user_name=%D0%90%D0%BB%D0%B5%D0%BA%D1%81%D0%B5%D0%B9+%D0%9C.%D0%A4.]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
44ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
55ms |
get tp. blocked users: |
1ms |
others: | 690ms |
total: | 854ms |
0 / 0 |