Click here to Skip to main content
15,920,438 members
Home / Discussions / Windows Forms
   

Windows Forms

 
GeneralRe: Window resizing Pin
Luc Pattyn17-Jun-10 8:49
sitebuilderLuc Pattyn17-Jun-10 8:49 
GeneralRe: Window resizing Pin
Lamazhab24-Jun-10 13:02
Lamazhab24-Jun-10 13:02 
GeneralRe: Window resizing Pin
Luc Pattyn24-Jun-10 13:08
sitebuilderLuc Pattyn24-Jun-10 13:08 
QuestionAutomatically add a new row when the user presses "Tab" Pin
sri_009915-Jun-10 23:40
sri_009915-Jun-10 23:40 
AnswerRe: Automatically add a new row when the user presses "Tab" Pin
Som Shekhar16-Jun-10 2:05
Som Shekhar16-Jun-10 2:05 
QuestionUSB drive reader Pin
S.Aijaz14-Jun-10 3:45
S.Aijaz14-Jun-10 3:45 
Answercross-post Pin
Luc Pattyn14-Jun-10 3:55
sitebuilderLuc Pattyn14-Jun-10 3:55 
QuestionCustom controll flickers! Pin
venomation9-Jun-10 9:28
venomation9-Jun-10 9:28 
I am new to making custom windows forms control's and created a small component that can draw a grid.
The problem I am facing is when I scroll using the panels auto scroll features it seems to flicker and be displaced but what I am hoping for is a smooth transition across the x or y axis.

using System.Drawing;
using System.Windows.Forms;

namespace TileMapper.Presentation.Controls
{
    public partial class MapRenderer : UserControl
    {
        private Point _tileBound;
        private Point _rowsColumns;
        private bool _initalized = false;
        public MapRenderer()
        {
            InitializeComponent();
            this.DoubleBuffered = true;
          
            // Activates double buffering 
            this.SetStyle(ControlStyles.DoubleBuffer |
               ControlStyles.OptimizedDoubleBuffer |
               ControlStyles.UserPaint |
               ControlStyles.AllPaintingInWmPaint, true);
            this.UpdateStyles();


        }

        public void InitalizeGrid(int tileWidth, int tileHeight, int rows, int columns)
        {
            _tileBound = new Point(tileWidth, tileHeight);
            _rowsColumns = new Point(rows, columns);
            panel1.AutoScrollMinSize = new Size(_tileBound.X * _rowsColumns.X, _tileBound.Y * _rowsColumns.Y);
            _initalized = true;
            _pen = new Pen(Color.Black);
            _tile = new Rectangle(0, 0, _tileBound.X, _tileBound.Y);
        }

 
        Pen _pen;
        Rectangle _tile;
        void DrawGrid(Graphics e)
        {
          
            Image im = Image.FromFile(@"H:\My Pictures/tile.png");
            for (int x = 0; x < _rowsColumns.X; x++)
            {
                for (int y = 0; y < _rowsColumns.Y; y++)
                {
                    Rectangle rec = new Rectangle(x * _tileBound.X - panel1.HorizontalScroll.Value
                        , y * _tileBound.Y-panel1.VerticalScroll.Value, _tileBound.X, _tileBound.Y);

                   
                    e.DrawRectangle(_pen, rec);
                    e.DrawImage(im, rec, _tile, GraphicsUnit.Pixel);
                }

            }

        }

     

        private void panel1_Paint(object sender, PaintEventArgs e)
        {

            if (_initalized) DrawGrid(e.Graphics);

        }

    }
}


The design code and such is literally all design and has no functionality and has no need to be here.
Sorry for the bad code but I have tried many double buffering techniques and such to fix this problem so its a bit hacked up Roll eyes | :rolleyes:

Anyone got some ideas to stop this flicker?

Thanks ! Big Grin | :-D
AnswerRe: Custom controll flickers! [modified] Pin
Luc Pattyn9-Jun-10 9:43
sitebuilderLuc Pattyn9-Jun-10 9:43 
GeneralRe: Custom controll flickers! Pin
venomation9-Jun-10 11:42
venomation9-Jun-10 11:42 
GeneralRe: Custom controll flickers! Pin
Luc Pattyn9-Jun-10 12:06
sitebuilderLuc Pattyn9-Jun-10 12:06 
GeneralRe: Custom controll flickers! Pin
venomation9-Jun-10 13:37
venomation9-Jun-10 13:37 
GeneralRe: Custom controll flickers! Pin
Luc Pattyn9-Jun-10 13:44
sitebuilderLuc Pattyn9-Jun-10 13:44 
GeneralRe: Custom controll flickers! Pin
venomation9-Jun-10 14:05
venomation9-Jun-10 14:05 
GeneralRe: Custom controll flickers! Pin
Luc Pattyn9-Jun-10 14:40
sitebuilderLuc Pattyn9-Jun-10 14:40 
GeneralRe: Custom controll flickers! Pin
venomation10-Jun-10 4:11
venomation10-Jun-10 4:11 
GeneralRe: Custom controll flickers! Pin
Luc Pattyn10-Jun-10 4:21
sitebuilderLuc Pattyn10-Jun-10 4:21 
GeneralRe: Custom controll flickers! Pin
venomation10-Jun-10 4:56
venomation10-Jun-10 4:56 
GeneralRe: Custom controll flickers! Pin
Luc Pattyn10-Jun-10 5:16
sitebuilderLuc Pattyn10-Jun-10 5:16 
GeneralRe: Custom controll flickers! Pin
venomation10-Jun-10 5:27
venomation10-Jun-10 5:27 
GeneralRe: Custom controll flickers! Pin
Luc Pattyn10-Jun-10 5:41
sitebuilderLuc Pattyn10-Jun-10 5:41 
GeneralRe: Custom controll flickers! Pin
venomation11-Jun-10 1:44
venomation11-Jun-10 1:44 
GeneralRe: Custom controll flickers! Pin
Luc Pattyn11-Jun-10 1:55
sitebuilderLuc Pattyn11-Jun-10 1:55 
QuestionDynamically data binding in tree view control in windows forms Pin
ims.sanjay1-Jun-10 9:11
ims.sanjay1-Jun-10 9:11 
AnswerRe: Dynamically data binding in tree view control in windows forms Pin
Peace ON1-Jun-10 21:47
Peace ON1-Jun-10 21:47 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.