473,725 Members | 1,786 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Custom Windows DataGrid

I have a custom-built datagrid for windows forms. I overrode the
scrollbars in it because I wanted to draw my own (basically, they're
skinned). As a result, I handle all scroll events and calls. I also
have a row-selector column as the first column, and that needs to stay
visible. Think Excel. However, if a user clicks a cell that is all
the way to the right and goes off the grid a bit, then the entire grid
shifts, including my row-selector column. I can't find any event that
seems to coincide with this. Yes, CurrentCellChan ged fires, but by
then it's too late to prevent the grid from scrolling.
So, does anyone know a good way to make a column freeze (this is a
windows forms application), and how can I prevent the grid from auto
scrolling? Thanks

Nov 21 '05 #1
6 4363
Bob,

I don't know if you have planned to use VB2005 soon.

Be aware that the datagridview makes a lot of what you are doing now
completly unneeded.

http://msdn.microsoft.com/library/de...tml/vs05a9.asp

And as I tried it, it is in my opinion even nicer than that.

Cor
Nov 21 '05 #2
Bob,

I don't know if you have planned to use VB2005 soon.

Be aware that the datagridview makes a lot of what you are doing now
completly unneeded.

http://msdn.microsoft.com/library/de...tml/vs05a9.asp

And as I tried it, it is in my opinion even nicer than that.

Cor
Nov 21 '05 #3
Perhaps, but this is for a large-scale commercial application that's
been in development for over 2 years. We're releasing 2.5 soon and
really don't have time/resources to convert to 2005. Believe me, I've
been reading all the great stuff that's in VB2005 and SQL 2005, but
until then, I have to re-create these features in 2003. Thanks
anyway...

Nov 21 '05 #4
Perhaps, but this is for a large-scale commercial application that's
been in development for over 2 years. We're releasing 2.5 soon and
really don't have time/resources to convert to 2005. Believe me, I've
been reading all the great stuff that's in VB2005 and SQL 2005, but
until then, I have to re-create these features in 2003. Thanks
anyway...

Nov 21 '05 #5
DWS
Bob,
I know how cool custom scrolls can be. This is just me I would make all the
columns fit exactly on the visible display area of the data grid by adjusting
the column width. Too many columns then hide the columns that don't fit.
You'll have to use the tablestyles collection
Its dificult to setup but here goes
click properties
set the width to 420
select tablestyles collection and go to the designer ...
add a tablestyle just click the big add button
in the mapping name select your datamember (datamember on grid) name from
the drop down list
go into the grid columns styles collection designer ... (same designer)
in the mapping name select your first column from the drop down list.
set width to 100
do the same for the next three columns
for all the remaining columns set the width to zero.
when you run the datagrid will display the first four columns.
In the cool scroll click to move right. make columns visible by changing
the width to non zero.

datagrid1.Table Styles.Item(0). GridColumnStyle s.Item(0).Width =0
datagrid1.Table Styles.Item(0). GridColumnStyle s.Item(4).Width =100

Sorry I don't know how to progamatically create a table styles collection at
run time you'll have to do it manually in the designer.

Good Luck
DWS

"Bob The Builder" wrote:
I have a custom-built datagrid for windows forms. I overrode the
scrollbars in it because I wanted to draw my own (basically, they're
skinned). As a result, I handle all scroll events and calls. I also
have a row-selector column as the first column, and that needs to stay
visible. Think Excel. However, if a user clicks a cell that is all
the way to the right and goes off the grid a bit, then the entire grid
shifts, including my row-selector column. I can't find any event that
seems to coincide with this. Yes, CurrentCellChan ged fires, but by
then it's too late to prevent the grid from scrolling.
So, does anyone know a good way to make a column freeze (this is a
windows forms application), and how can I prevent the grid from auto
scrolling? Thanks

Nov 21 '05 #6
That's essentially what I'm doing now, except it's programmaticall y. I
have a class that inherits from DataGridTextBox Column (for custom
coloring and properties). I iterate through the columns in my
DataSource, and call BaseStyle.GridC olumnStyles.Add (gridCol), where
gridCol is my DataGridTextBox Column.
But, scrolling with the scrollbar really isn't the issue. The problem
is when a user clicks on a cell that hangs off the edge of the grid.
That is, a cell whose .Left property is within the grid, but .Left +
..Width is beyond the width of the grid. And the columns must have
variable width.

Nov 21 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

0
1641
by: Chris Mayers | last post by:
I have a Windows Forms DataGrid that has a DataView as a datasource. My problem is that I want the datagrid to exhibit some special sorting properties when the header rows are clicked on. From reading round the newsgroups, it seems that a custom 'IComparer' is the answer, but I'm not quite sure how to do this. Really, how to get at the IComparer that the DataGrid/DataView uses for sorting. Can anyone point me towards a nice example...
2
2754
by: SammyBar | last post by:
Hi, I'm trying to bind a custom collection class to a data grid, following the guidelines from the article http://msdn.microsoft.com/msdnmag/issues/05/08/CollectionsandDataBinding/default.aspx. The problem is the article is in VisualBasic. I already get the collection to be recognized as a Data Source by the IDE. It populated the DataGrid correctly from the fields on the items object of the collection, but I can't get the DataGrid to...
3
4270
by: Bill C. | last post by:
Hello, I know this has been discussed a lot already because I've been searching around for information the last few weeks. I'm trying to implement a DataGridComboBoxColumn class. I've found several examples on the web. They all seem to have problems, though that I've been unable to resolve. The most promising example I have found is at:
1
3972
by: The_Rave | last post by:
Hi everyone, I'm trying to add my own template columns to the property builder of ..NET. E.g. a checkbox column, or an image column. But I can't find the sources of the wizard, or a way to add them to the wizard, via add-in? I tried to capture it with a macro, but all I can't get out of it is the raise event of the wizard, nothing that happens during the wizard. "
0
1538
by: metamedia | last post by:
How do I get a datagrid to register a data change from a custom control cell (combobox) I've got a Windows Application with a Windows Form Datagrid that has a custom combobox column. When the user clicks on a new row in the datagrid and tries to select or enter a new value in the combobox, the datagrid doesn't seem to register the change, so if the user tabs through the columns and onto the next row, the data is cleared and not saved Does...
1
1635
by: Vagabond Software | last post by:
I am creating a custom datagrid based, in part, from someone else's code. The author declared a derived datagrid class in a windows form, then declared a derived ColumnStyle class, in the same form, that accepted his custom grid type as an argument. For example: public class HisCustomGrid : DataGrid { public HisCustomGrid() { } } public class HisColumnStyle : DataGridTextBox { public HisColumnStyle(int anyint, HisCustomGrid grid) { } }...
2
11710
by: DraguVaso | last post by:
Hi, I'm looking for a nice way to format the cell of my datagrid according to some predefined 'rules'. I found a lot on the site of George shepherd, but it wasn't really what I was looking for: I found there: How can I change the font used in a Gridcell on a cell by cell or row by row basis. Wih this code I am able to change the Font/Background/... based on the position of the field (column and row). The problem is: it only changes...
4
1827
by: Steve | last post by:
I am fairly new to VB.NET, and I am rewriting an application I wrote a while back, also in VB.NET. I aplied some new things I learned. Anyway, here is my problem....... I have a custom DataGrid with a buttonRow that does a delete function for me. Microsoft support helped me back then to get this done. Here is part of the code that creates the dataGrid: Dim ButtonColStyle As DataGridButtonColumn
2
2444
by: AMDRIT | last post by:
Hello everyone, I have created a custom component and one of its properties is a class object with it's own properties. During runtime, I can assign values to the class object properties just fine. However, when attempting to assing default values as designtime in the propertygrid, nothing is working on the class object. I know that I am doing it wrong, any ideas what it is? Thanks in advance
0
8872
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
8747
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can effortlessly switch the default language on Windows 10 without reinstalling. I'll walk you through it. First, let's disable language synchronization. With a Microsoft account, language settings sync across devices. To prevent any complications,...
0
9392
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
9091
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
6694
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
5997
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
4505
by: TSSRALBI | last post by:
Hello I'm a network technician in training and I need your help. I am currently learning how to create and manage the different types of VPNs and I have a question about LAN-to-LAN VPNs. The last exercise I practiced was to create a LAN-to-LAN VPN between two Pfsense firewalls, by using IPSEC protocols. I succeeded, with both firewalls in the same network. But I'm wondering if it's possible to do the same thing, with 2 Pfsense firewalls...
2
2619
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2150
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.