On Fri, Mar 27, 2009 at 3:42 AM, tsai <[email protected]> wrote: > After I upgrade to mono 2.4 RC3.5, this bug also exists. My program crashed. > r130179 Modified: trunk/mcs/class/System.Data/System.Data/DataView.cs > Can you tell me where I can find DataView.cs. Thanks in advance. >
The fix is not going to be in the 2.4 because it's already too late in the release cycle. You will have to compile Mono from SVN as described here - http://mono-project.com/Compiling_Mono . > ----- Original Message ----- > From: "Ivan N. Zlatev" <[email protected]> > To: "peter tsai" <[email protected]> > Cc: <[email protected]> > Sent: Wednesday, March 25, 2009 11:38 AM > Subject: Re: [Mono-winforms-list] Bug 479405 has not patched in Mono 2.4RC3.2 > one month's ago > > > On Tue, Mar 24, 2009 at 1:31 AM, peter tsai <[email protected]> wrote: >> >> I'm using Mono 2.2 on openSuSE 11.1. Unfortunately, I compile Mono 2.4RC3.2 >> has problem,too. >> who can help me? thanks in advance. > > Fixed in r130179. > > The problem was in the DataView class not firing ListChanged when the > RowFilter changes. > > >> >> dataGridView1.DataSource = MakeDataTable(); // generate DataTable with 10 >> records >> DataView view = ((DataTable)dataGridView1.DataSource).DefaultView; >> view.RowFilter = "Qty>=3 and Qty<=8"; // filter 4 records >> >> DataGridView display ok (records is 7) in .net, >> but mono (2.0.1, 2.2 and 2.4RC3.2) on SUSE 11.1 abnormal (RowFilter not >> active, so records is still 10). >> mono 2.4RC3.2 crashed my application >> >> namespace MonoBug >> { >> public partial class MonoBug : Form >> { >> bool inFilter = false; >> private void button2_Click(object sender, EventArgs e) // bug >> { >> DataView view = >> ((DataTable)dataGridView1.DataSource).DefaultView; >> if (inFilter) >> view.RowFilter = ""; >> else >> view.RowFilter = "Qty>=3 and Qty<=8"; >> >> // run in .net ok, but mono (2.0.1 and 2.2) on SUSE 11.1 >> abnormal >> // visual studio 2005 complier on windows XP >> // dataGridView1.Invalidate(); >> >> inFilter = !inFilter; >> } >> >> public MonoBug() >> { >> InitializeComponent(); >> >> dataGridView1.ReadOnly = true; >> dataGridView1.AllowUserToAddRows = false; >> dataGridView1.DataSource = MakeDataTable(); ; >> } >> >> private DataTable MakeDataTable() >> { >> DataTable table = new DataTable(); >> >> DataColumn column = new DataColumn(); >> column.DataType = System.Type.GetType("System.String"); >> column.Caption = "Item"; >> column.ColumnName = "Item"; >> table.Columns.Add(column); >> >> column = new DataColumn(); >> column.DataType = System.Type.GetType("System.Decimal"); >> column.Caption = "Qty"; >> column.ColumnName = "Qty"; >> table.Columns.Add(column); >> >> DataRow row; >> for (int i = 1; i <= 10; i++) >> { >> row = table.NewRow(); >> row["Item"] = "Item " + i.ToString(); >> row["Qty"] = i; >> table.Rows.Add(row); >> } >> return table; >> } >> } >> } >> >> -- >> View this message in context: >> http://www.nabble.com/Bug-479405-has-not-patched-in-Mono-2.4RC3.2-one-month%27s-ago-tp22672789p22672789.html >> Sent from the Mono - WinForms mailing list archive at Nabble.com. >> >> _______________________________________________ >> Mono-winforms-list maillist - [email protected] >> http://lists.ximian.com/mailman/listinfo/mono-winforms-list >> > > > > -- > Kind Regards, > Ivan N. Zlatev > > > __________ NOD32 3953 (20090321) Information __________ > > This message was checked by NOD32 antivirus system. > http://www.nod32cn.com > > -- Kind Regards, Ivan N. Zlatev _______________________________________________ Mono-winforms-list maillist - [email protected] http://lists.ximian.com/mailman/listinfo/mono-winforms-list
