Domanda

Ecco la situazione:Ho bisogno di associare un WPF FixedPage contro un DataRow.Associazioni non funzionano contro DataRows;lavorano contro DataRowViews.Ho bisogno di fare questo nel modo più generico possibile, come io non so niente e non hanno alcun controllo su ciò che è in DataRow.

Ciò di cui ho bisogno è di essere in grado di ottenere un DataRowView per un dato DataRow.Non posso usare il Find() metodo DefaultView perché quello che serve una chiave, e non vi è alcuna garanzia che la tabella ha una chiave primaria set.

Qualcuno ha un suggerimento per il modo migliore per andare in giro per questo?

È stato utile?

Soluzione

Non è Esattamente un sexy pezzo di codice, ma loro non sembrano essere un modo automatizzato per trovare la riga senza giusta loop tabella.

        DataRowView newRowView = null;
        foreach (DataRowView tempRowView in myDataTable.DefaultView)
        {
            if (tempRowView.Row == rowToMatch)
                newRowView = tempRowView;
        }
        if (newRow != null)
            UseNewRowView(newRowView);
        else
            HandleRowNotFound();

Altri suggerimenti

row.Table.DefaultView[row.Table.Rows.IndexOf(row)]

Questo è un bene rispondere.Ma se vi trovate in questa situazione, si dovrebbe considerare l'apprendimento di più su Dataview e come essi vengono utilizzati, quindi il refactoring del codice per essere vista-centric anziché tabella-centric.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top