Daniel
Sun Dec 18 06:55:23 CST 2005
OK, I think I can visualise your scenario now.
You have a listview in a panel and they remain the same size as each other
throughout their lifetime? The obvious question is, why are you using a
panel and not the listview on its own?
You say you can see scrollbars when adding items that exceed the height of
the listview. You can workout how many listview items the listview has and
when it exceeds a certain number *then* do your resizing. You can get the
listviewitem height by sending a msg to the listview with argument:
LB_GETITEMHEIGHT (google/msdn it).
However, I would take a step back and look at the overall situation. Take
the listview out of the panel unless you have a good reason. The scrollbars
you are seeing will appear in any case. They will be from the listview
itself. To avoid the scrollbars (regardless of the control they belong to),
simply make the columns of your listview smaller from the start. In other
words, anticipate that you will get scrollbars and size everything once.
Sure you'll have about 20 pixels on the right unused in some circumstances
but that is better than all this messing around in my opinion.
Cheers
Daniel
--
http://www.danielmoth.com/Blog/
"Dylas" <Dylas@discussions.microsoft.com> wrote in message
news:DD63AE25-0568-4104-99D4-29C691379C01@microsoft.com...
> Hi Daniel,
>
> The situation is like this, I put a ListView inside a Panel(Both of them
> are
> of same width and height) and inside the ListView i will load rows of data
> into it. And the sum of the columns width in the ListView will be 240 and
> if
> the rows exceed the height of the Panel(which is the same with the
> ListView
> height), vertical scrollbar(because of too many rows) and horizontal
> scrollbar(because deivce width is 240 and now add on a vertical scrollbar)
> will auto on, so in this situation i would like to resize the the Columns
> of
> the Listview in order to prevent the horizontal scrollbar from appearing.
>
> Thank You for your prompt replies.
>
> Regards,
> Dylas
>
> "Daniel Moth" wrote:
>
>> So under what circumstances do you see a scrollbar in the panel?
>>
>> Cheers
>> Daniel
>> --
>>
http://www.danielmoth.com/Blog/
>>
>> "Dylas" <Dylas@discussions.microsoft.com> wrote in message
>> news:92022570-1ADC-431F-B642-9607531DB4AA@microsoft.com...
>> > Hi Daniel Moth,
>> >
>> > Thanks for ur suggestion.
>> > I tried out ur method and the problem is that the ListView is dock in
>> > the
>> > panel container and the height of the ListView is always the same as
>> > the
>> > panel ..
>> >
>> > Sorry, new to all this.
>> >
>> > Regards,
>> > Dylas
>> >
>> > "Daniel Moth" wrote:
>> >
>> >> Can you not just compare the height of the panel with he height of the
>> >> listview? When their difference is less than X you have scrollbars
>> >> visible.
>> >> X will be different depending on what distance you left between the
>> >> listview
>> >> and the panel edge.
>> >>
>> >> Cheers
>> >> Daniel
>> >> --
>> >>
http://www.danielmoth.com/Blog/
>> >>
>> >> "Dylas" <Dylas@discussions.microsoft.com> wrote in message
>> >> news:07A740B6-DA92-4D12-BCA6-FE8270957571@microsoft.com...
>> >> > Hi,
>> >> >
>> >> > I have a listview inside a panel and i want to know how to dectect
>> >> > whether
>> >> > the autoscrollbar of the panel has been activated? The reason is
>> >> > that i
>> >> > need
>> >> > to resize the column of the listview if the panel scrollbar is
>> >> > visible.
>> >> >
>> >> > Regards,
>> >> > Dylas
>> >>
>> >>
>> >>
>>
>>
>>