• This site uses cookies. By continuing to use this site, you are agreeing to our use of cookies. Learn more.

Non-clickable Header for ListView

S

Sorin Dolha

#1
I need to set the column headers of a ListView to be non-clickable (as I
don't want to implement any sorting or anything else for the ListView on user
clicking on the column headers).

I tried to use GridViewColumn.HeaderTemplate elements for my columns and
define a custom header template using TextBlock elements, as I though this
would replace the default "button"-like textblocks added by default; but this
doesn't work well for some reason, i.e. my style is shown on the header
(including any settings I set up for the custom textblocks), but the headers
are still clickable.

It seems that the clickable behavior for the header is added by a parent
container of the stylable column header (such as the
GridViewHeaderRowPresenter), so this must be resolved in another way. My next
thought then was to use a custom template for the whole ListView that will
use the GridViewHeaderRowPresenter and ItemsPresenter in a stack panel, and
then styling te GridViewHeaderRowPresenter somehow. But I didn't know how to
style the GridViewHeaderRowPresenter object either to remove the button
behavior generated for the column headers, and now I'm out of ideas.

Can someonw guide me on this? (I acknowledge I'm not very much experienced
with WPF, the resolution could be simple, but I didn't yet think of it!)
Thank you in advance for any ideas.

--
Sorin Dolha, DlhSoft
 

My Computer

S

Sorin Dolha

#2
I forgot to say, I'm using the GridView view for the ListView instance to
show up columns.

--
Sorin Dolha, DlhSoft


"Sorin Dolha" wrote:

> I need to set the column headers of a ListView to be non-clickable (as I
> don't want to implement any sorting or anything else for the ListView on user
> clicking on the column headers).
>
> I tried to use GridViewColumn.HeaderTemplate elements for my columns and
> define a custom header template using TextBlock elements, as I though this
> would replace the default "button"-like textblocks added by default; but this
> doesn't work well for some reason, i.e. my style is shown on the header
> (including any settings I set up for the custom textblocks), but the headers
> are still clickable.
>
> It seems that the clickable behavior for the header is added by a parent
> container of the stylable column header (such as the
> GridViewHeaderRowPresenter), so this must be resolved in another way. My next
> thought then was to use a custom template for the whole ListView that will
> use the GridViewHeaderRowPresenter and ItemsPresenter in a stack panel, and
> then styling te GridViewHeaderRowPresenter somehow. But I didn't know how to
> style the GridViewHeaderRowPresenter object either to remove the button
> behavior generated for the column headers, and now I'm out of ideas.
>
> Can someonw guide me on this? (I acknowledge I'm not very much experienced
> with WPF, the resolution could be simple, but I didn't yet think of it!)
> Thank you in advance for any ideas.
>
> --
> Sorin Dolha, DlhSoft
 

My Computer