Pytanie : SqlCeResultSets w Windows Wisząca ozdoba

I mieć problem z mobilny kawałek I pracować na pracować wymagać kilka datagrids.  The wybór robić w the pierwszy datagrid jechać the opcja który pojawiać się w sekunda, i w ten sposób dalej until the użytkownik móc the odmianowy szczegół rejestr być póżniej.  Przy jakaś punkt, the użytkownik móc the oryginalny datagrid (lub wtedy już zrobić wybór dla) i ich wybór, che rozjaśniać the "dziecko" wybór che wtedy re-wybierać.  W tym wypadku, wszystkie datagrids być wszystkie - jakaś edytorstwo wp8lywy miejsce na różny forms.

My problem być że the program rzucać "dosyć składowy" błąd składowy mateczny wybór zmieniać, che zdarzać się podczas the zapytanie the nowy opcja dla the dziecko.  I próbować the SqlCeCommand przedmiot natychmiast, che bałaganić w górę sprawnie wybrany IDs.  The następny obejście I próbować sprawdzać tuż przed rebinding.  Dane adaptator i stół być opcja przez the koszty stałe wytwarzać.  Ono być mój zrozumienie (i doświadczenie do tej pory) że SqlCeResultSet pracować dużo szybki z minimalny koszty stałe, ale I być minimalny inny opcja.  

The przykład kod przykład zmieniać wlasność intelektualna, i provided jako przykład.  Kod szczegół zawierać zawierać:
  • A wytrwały związek z the lokalny baza danych utrzymywać w myStaticGlobals

  • Synchronization z mistrz SQL serwer.  Podczas sync the lokalny związek niszczyć, i ono reinstantiated po the sync.

  • Datagrid wydarzenie depeszować/unwired przez pomagier class.

  • Selections tropić w zwyczaj klasa z rodzic/dziecko powiązanie i metoda the wynikły stack.


1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
14:
15:
16:
17:
18:
19:
20:
21:
22:
23:
24:
25:
26:
27:
28:
29:
30:
31:
32:
33:
34:
35:
36:
37:
38:
39:
40:
41:
42:
43:
44:
45:
46:
47:
48:
49:
50:
51:
 *****
//TODO: unwire jakaś wydarzenie treser który wywoływać rebind
// *****
GridHelper.UnregisterDatagridEvents (ref datagrid1);

System.Data.SqlServerCe.SqlCeCommand cmdSql = nowy System.Data.SqlServerCe.SqlCeCommand ();
cmdSql.Connection = myStaticGlobals.LocalConnection;
System.Data.SqlServerCe.SqlCeResultSet ceResults = null;

SelectedContext visitContext = myStaticGlobals.SelectedData.FindContext ("Wizyta", fałszywy);

jeżeli ((visitContext.SelectedId == null) || (visitContext.SelectedTable == null))
    MessageBox.Show ("Żadny wizyta selected.");
inny
{
    cmdSql.CommandText =
        sznurek. Format ("wybrany column1, column2 od table1 wewnętrzny łączyć {(0)} jako wizyta dokąd visits.id = {(1)}", visitContext.SelectedTable, (Int64) visitContext.SelectedId);
    ////TODO: dodawać DataGridStyle?

    próba
    {
        jeżeli (this.datagrid1.DataSource! = null)
        {
            ((System.Data.SqlServerCe.SqlCeResultSet) this.datagrid1.DataSource). Zakończenie ();
            ((System.Data.SqlServerCe.SqlCeResultSet) this.datagrid1.DataSource). Dispose ();
        }

        ceResults = cmdSql.ExecuteResultSet (System.Data.SqlServerCe.ResultSetOptions.Scrollable | System.Data.SqlServerCe.ResultSetOptions.Insensitive); // <-- błąd rzucać tutaj
        this.datagrid1.DataSource = ceResults;
        
        this.datagrid1.TableStyles.Clear ();
        DataGridTableStyle hideId = nowy DataGridTableStyle ();
        this.datagrid1.TableStyles.Add (hideId);
        hideId.GridColumnStyles [(0)]. Szerokość = -1;
    }
    chwyt (System.Data.SqlServerCe.SqlCeException exSql)
    {
        jeżeli (exSql.Message.IndexOf ("") > (0))
            MessageBox.Show ("Zadawalać re-sync wszystkie przyrząd data.");
        inny
            MessageBox.Show (exSql.Message);
    }
    chwyt (Wyjątek wyjątek)
    {
        MessageBox.Show (messageBox.Show. Wiadomość);
    }
}
// *****
//TODO: Re-wire jakaś wydarzenie treser dla stymulowany skutek i podpalać
// *****
GridHelper.RegisterDatagridEvents (ref datagrid1);

Odpowiedź : SqlCeResultSets w Windows Wisząca ozdoba

Windows Żywy OneCare discontinued na 30.6.2009 i i budować na RAV technologia. Następca być Windows ochrona podstawy - freeware narzędzie. W krótki OneCare ono być historia…
I zupełnie często używać antimalware (lub wkrótce MBAM) od Malwarebytes - freeware wersja. Ten wersja mieć ten obraz cyfrowy, ale ono być zupełnie wydajny przeciw wszystkie rodzaj malware.
Inne rozwiązania  
 
programming4us programming4us