We use cookies to give you the best experience on our website. If you continue to browse, then you agree to our privacy policy and cookie policy.
Unfortunately, activation email could not send to your email. Please try again.
Syncfusion Feedback

General questions

Thread ID:

Created:

Updated:

Platform:

Replies:

2599 Feb 3,2003 07:31 PM UTC Feb 4,2003 03:35 PM UTC Windows Forms 2
loading
Tags: GridControl
Thor
Asked On February 3, 2003 07:31 PM UTC

I am evaluating Essential Grid and I can't easily find out how to do the following things. 1. Set a minimum and maximum value for a cell. If the min is 10 and max is 20, if the user types in the user will get an error. 2. If I set CellValueType = typeof(double) it will prevent non-numeric entries on validation. How can I override the error message from "asdf is not a valid value for Double" to "asdf is not a number, please enter a number". 3. In the case of #2 above (i.e. the user has typed in a non-numeric value into a cell value that is double. I would like the user to be able to press "Cancel", however, the with a text value in the cell the Cancel button doensn't receive the click. 4. If I sent a cell to NumericUpDown, how can I then prevent the user from typing a value in that cell. In other words, I want the cell value to change only by using the NumericUpDown. Finally, a comment. The cell based nature of this grid makes it much easier to work with than anything else I have used. Kudos to the development team. I would like to agree with the other user who suggested the "Export to Excel" feature. In general any automated export to CSV, Tab Delimited, Excel, XML, etc. would only increase the value of the grid. Thank you.

Administrator [Syncfusion]
Replied On February 3, 2003 10:04 PM UTC

1) Take a look at the Grid/Samples/Quick Start/TextFormat sample. Rows 11 and 12 there have validation implemented. 2) You can handle the CurrentCellValidating event and test the value there, cancelling th eevent and setting the message if necessary.
 
private void gridControl1_CurrentCellValidating(object sender, CancelEventArgs e)
{
	GridCurrentCell cc = this.gridControl1.CurrentCell;
	if( this.gridControl1[cc.RowIndex, cc.ColIndex].CellValueType == typeof(double))
	{
		string s = cc.Renderer.ControlText;
		try
		{
			double d = double.Parse(s);
		}
		catch
		{
			cc.ErrorMessage = "bad value";
			e.Cancel = true;
		}
	}
}
3) On your cancel button, try setting its CausesValidation property to false. 4) At the grid level, you could handle CurrrentCellKeyPress.
private void gridControl1_CurrentCellKeyPress(object sender, KeyPressEventArgs e)
{
	GridCurrentCell cc = this.gridControl1.CurrentCell;
	if(this.gridControl1[cc.RowIndex, cc.ColIndex].CellType == "NumericUpDown")
	{
		e.Handled = true;
	}
}
Currently, you can save CSV and TSV files. Future releases will support XLS and XML.
//save text
private void button3_Click(object sender, System.EventArgs e)
{
	this.gridControl1.Model.TextDataExchange.ExportTabDelim = ",";

	string outPut;
	int nRows, nCols;
	GridRangeInfoList rangeInfoList = new GridRangeInfoList();
	rangeInfoList.Add(GridRangeInfo.Cells(1, 1, this.gridControl1.RowCount, this.gridControl1.ColCount));
	bool b = this.gridControl1.Model.TextDataExchange.CopyTextToBuffer(out outPut, rangeInfoList, out nRows, out nCols);

	if(b)
	{
		StreamWriter writer = new StreamWriter("test.csv");
		writer.Write(outPut);
		writer.Close();
	}
}

Thor
Replied On February 4, 2003 03:35 PM UTC

Thank you. > 1) Take a look at the Grid/Samples/Quick Start/TextFormat sample. Rows 11 and 12 there have validation implemented. > > 2) You can handle the CurrentCellValidating event and test the value there, cancelling th eevent and setting the message if necessary. >
 
> private void gridControl1_CurrentCellValidating(object sender, CancelEventArgs e)
> {
> 	GridCurrentCell cc = this.gridControl1.CurrentCell;
> 	if( this.gridControl1[cc.RowIndex, cc.ColIndex].CellValueType == typeof(double))
> 	{
> 		string s = cc.Renderer.ControlText;
> 		try
> 		{
> 			double d = double.Parse(s);
> 		}
> 		catch
> 		{
> 			cc.ErrorMessage = "bad value";
> 			e.Cancel = true;
> 		}
> 	}
> }
> 
> > 3) On your cancel button, try setting its CausesValidation property to false. > > 4) At the grid level, you could handle CurrrentCellKeyPress. >
> private void gridControl1_CurrentCellKeyPress(object sender, KeyPressEventArgs e)
> {
> 	GridCurrentCell cc = this.gridControl1.CurrentCell;
> 	if(this.gridControl1[cc.RowIndex, cc.ColIndex].CellType == "NumericUpDown")
> 	{
> 		e.Handled = true;
> 	}
> }
> 
> > > Currently, you can save CSV and TSV files. Future releases will support XLS and XML. > >
> //save text
> private void button3_Click(object sender, System.EventArgs e)
> {
> 	this.gridControl1.Model.TextDataExchange.ExportTabDelim = ",";
> 
> 	string outPut;
> 	int nRows, nCols;
> 	GridRangeInfoList rangeInfoList = new GridRangeInfoList();
> 	rangeInfoList.Add(GridRangeInfo.Cells(1, 1, this.gridControl1.RowCount, this.gridControl1.ColCount));
> 	bool b = this.gridControl1.Model.TextDataExchange.CopyTextToBuffer(out outPut, rangeInfoList, out nRows, out nCols);
> 
> 	if(b)
> 	{
> 		StreamWriter writer = new StreamWriter("test.csv");
> 		writer.Write(outPut);
> 		writer.Close();
> 	}
> }
> 

CONFIRMATION

This post will be permanently deleted. Are you sure you want to continue?

Sorry, An error occured while processing your request. Please try again later.

Warning Icon You are using an outdated version of Internet Explorer that may not display all features of this and other websites. Upgrade to Internet Explorer 8 or newer for a better experience.Close Icon

;