Completed
Last Updated: 09 Jun 2020 15:26 by ADMIN
Release R2 2020 SP1
Mahesh V
Created on: 11 May 2020 09:49
Category: CheckedDropDownList
Type: Bug Report
0
RadCheckedDropDownList: DropDownListElement.ArrowButton rendering issue in TelerikMetroBlue theme

Hello

In RadCheckedDropDownList, We are using 'TelerikMetroBlue' theme. When we select multiple items in dropdownlist, its creating issue in rendering items in TextBlock. Selected items are coming on top of DropDownListElement ArrowButton, I can't see arrow button clearly due to items in background. If i use another theme then its working fine but i have to use 'TelerikMetroBlue' theme. please find attached.

 

Please advise.

Attached Files:
8 comments
Mahesh V
Posted on: 19 May 2020 05:19

Hello Nadya

Thanks for the information provided. It is working fine now.

Thanks again.

 

 

ADMIN
Nadya | Tech Support Engineer
Posted on: 18 May 2020 14:53

Hello Suresh,

Thank you for the additionally provided information. Now, I understand that the transparent BackColor of the RadCheckedDropDownList is your requirement. In this case, I can suggest to set the UseCompatibleTextRendering property of the TokenizedTextBlockElement to true. You can do this  in the TextBlockFormatting event where you have already been subscribed:

private void radCheckedDropDownList1_TextBlockFormatting(object sender, Telerik.WinControls.UI.TextBlockFormattingEventArgs e)
        {
            TokenizedTextBlockElement token = e.TextBlock as TokenizedTextBlockElement;
            if (token != null)
            {
                token.ContentElement.UseCompatibleTextRendering = true;
            }
        }

However, I would like to note that Windows Forms controls do not support true transparency. The background of a transparent Windows Forms control is painted by its parent. Even when you set the BackColor of control to Transparent you're not making the control "see-through". You're actually telling the control to take on the background properties of its parent container. The following threads will be useful on this topic:
https://stackoverflow.com/questions/4387680/transparent-background-on-winforms

https://docs.microsoft.com/en-us/dotnet/framework/winforms/controls/how-to-give-your-control-a-transparent-background

I hope this information helps. Should you have further questions please let me know.

Regards,
Nadya
Progress Telerik

Progress is here for your business, like always. Read more about the measures we are taking to ensure business continuity and help fight the COVID-19 pandemic.
Our thoughts here at Progress are with those affected by the outbreak.
Mahesh V
Posted on: 15 May 2020 04:44

Hi Nadya

I know it works fine when we comment that part where we set backcolor transparent. But backcolor transparent is my requirement. If we don't use backcolor transparent then its look will be different from other controls(like raddropdownlist) where we use 'telerikmetroblue' theme and backcolor transparent. In normal raddropdownlist control we are not facing this issue if content is greater than dropdownlist width.

Please advise.

Thanks

 

 

 

ADMIN
Nadya | Tech Support Engineer
Posted on: 14 May 2020 15:55

Hello Suresh,

Thank you for the provided project. 

After investigating it, I noticed that in the Designer.cs file the BackColor of RadCheckedDropDownList is set to transparent. When I commented on this line it seems to work correctly now. Below is the result on my end:


I attached the updated to this thread as well. 

I hope this helps. Let me know if you need further assistance.

Regards,
Nadya
Progress Telerik

Progress is here for your business, like always. Read more about the measures we are taking to ensure business continuity and help fight the COVID-19 pandemic.
Our thoughts here at Progress are with those affected by the outbreak.
Attached Files:
Mahesh V
Posted on: 14 May 2020 05:31

Hi

I am still facing the same issue.

I attached my sample project to this thread.

Thanks

 

Attached Files:
ADMIN
Nadya | Tech Support Engineer
Posted on: 13 May 2020 15:48

Hello Suresh,

In the TelerikMetroBlue theme, FillPrimitive is responsible for setting colors in different states of the button. Note, that when the RadCheckDropDownList is expanded the button is blue, when it is collapsed the button color becomes transparent and receive the color from its parent. Please see the attached gif file.

I attached my sample project to this thread. Could you please refer to it and see how it works.

I hope this information helps. If you have other questions do not hesitate to ask.

Regards,
Nadya
Progress Telerik

Progress is here for your business, like always. Read more about the measures we are taking to ensure business continuity and help fight the COVID-19 pandemic.
Our thoughts here at Progress are with those affected by the outbreak.
Mahesh V
Posted on: 12 May 2020 09:28

Hello

I Used your code 

this.radCheckedDropdownList.DropDownListElement.ArrowButton.ShouldPaint = true;

But Issue didn't resolve.

In your attached file, Arrow button and TextBlock are not coming transparent as it should come with 'TelerikMetroBlue' theme and backcolor 'Transparent'. But in my case both come with transparent background.

Please advise.

 

 


ADMIN
Nadya | Tech Support Engineer
Posted on: 11 May 2020 13:48

Hello Suresh,

I was able to replicate the problem when the TelerikMetroBlue theme is applied. 

I have logged it in our feedback portal by making this thread public on your behalf. You can track its progress, subscribe for status changes, and add your comments on the following link - feedback item.

As a reward, I updated your Telerik Points.

To workaround this issue you can set ArrowButton.ShouldPaint property to true:

this.radCheckedDropDownList1.DropDownListElement.ArrowButton.ShouldPaint = true;

The achieved result is demonstrated in the attached gif file.

I hope this helps. Should you have other questions do not hesitate to ask.


Nadya
Progress Telerik

Progress is here for your business, like always. Read more about the measures we are taking to ensure business continuity and help fight the COVID-19 pandemic.
Our thoughts here at Progress are with those affected by the outbreak.