Announcement

Collapse
No announcement yet.

Partner 728x90

Collapse

How to get hex string of brush after changing opacity?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    How to get hex string of brush after changing opacity?

    hello,

    Does anybody know how to retrieve the 8 digit hex string of a brush after changing its opacity?

    for example:
    Code:
    Brush OpaceBrush              = this.Stroke.Brush.Clone();
    Print(OpaceBrush.ToString());
    OpaceBrush.Opacity           = 0.1;
    Print(OpaceBrush.ToString());
    Both print outs return the exact same value. The 2nd print out does not reflect any change in opacity/alpha.


    Thanks!

    #2
    Hello gubbar924,

    From my understanding using System.Windows.Media.Brush.ToString() would print the solid color brush color which is a solid fill color.

    If you print the .Opacity property, are you finding this is not changing to the set value?

    Print(OpaceBrush.Opacity);
    Chelsea B.NinjaTrader Customer Service

    Comment


      #3
      Chelsea,

      I ran the following code
      Code:
      Brush OpaceBrush              = this.Stroke.Brush.Clone();
                          Print(OpaceBrush.ToString());
                          OpaceBrush.Opacity              = 0.05;
                          Print(OpaceBrush.Opacity);
                          Print(OpaceBrush.ToString());
                          OpaceBrush                      = null;
      and it resulted in
      #FF1E90FF
      0.05
      #FF1E90FF
      However, I do know that after changing the Opacity property, if I set the color of something like:
      Code:
      Something.Background = OpaceBrush;
      It does in fact use the changed opacity correctly, but it still wont give me the new hex value.

      Comment


        #4
        Hello gubbar924,

        From my understanding, in C# the Brush.ToString() prints the solid fill color hexadecimal. This would not include opacity.
        Chelsea B.NinjaTrader Customer Service

        Comment


          #5
          Hi Chelsea,

          I think I've figured out what I'm looking for.


          Just in case anybody else needs it, here is an example code:
          Code:
                              Brush OpaceBrush              = this.Stroke.Brush.Clone();
                              Print(OpaceBrush.ToString());
                              OpaceBrush.Opacity              = 0.05;
                              Print(OpaceBrush.Opacity);
                              Print(Environment.NewLine);
                              
                              Color nw  = ((SolidColorBrush)OpaceBrush).Color;
                              Print(nw.ToString());
                              nw.A = (byte)(OpaceBrush.Opacity * 255);
                              Print(nw.A);
                              Print(nw.ToString());
                              
                              OpaceBrush                      = null;
          Now, I get a new hex code value:
          #FF1E90FF
          0.05

          #FF1E90FF
          12
          #0C1E90FF
          Thanks!

          Comment

          Latest Posts

          Collapse

          Topics Statistics Last Post
          Started by DannyP96, 05-18-2026, 02:38 PM
          1 response
          89 views
          0 likes
          Last Post NinjaTrader_ChelseaB  
          Started by CarlTrading, 05-11-2026, 05:56 AM
          0 responses
          143 views
          0 likes
          Last Post CarlTrading  
          Started by CarlTrading, 05-10-2026, 08:12 PM
          0 responses
          83 views
          0 likes
          Last Post CarlTrading  
          Started by Hwop38, 05-04-2026, 07:02 PM
          0 responses
          257 views
          0 likes
          Last Post Hwop38
          by Hwop38
           
          Started by Mindset, 04-21-2026, 06:46 AM
          0 responses
          334 views
          0 likes
          Last Post Mindset
          by Mindset
           
          Working...
          X