Announcement

Collapse

Looking for a User App or Add-On built by the NinjaTrader community?

Visit NinjaTrader EcoSystem and our free User App Share!

Have a question for the NinjaScript developer community? Open a new thread in our NinjaScript File Sharing Discussion Forum!
See more
See less

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 bortz, 11-06-2023, 08:04 AM
          47 responses
          1,607 views
          0 likes
          Last Post aligator  
          Started by jaybedreamin, Today, 05:56 PM
          0 responses
          9 views
          0 likes
          Last Post jaybedreamin  
          Started by DJ888, 04-16-2024, 06:09 PM
          6 responses
          19 views
          0 likes
          Last Post DJ888
          by DJ888
           
          Started by Jon17, Today, 04:33 PM
          0 responses
          6 views
          0 likes
          Last Post Jon17
          by Jon17
           
          Started by Javierw.ok, Today, 04:12 PM
          0 responses
          15 views
          0 likes
          Last Post Javierw.ok  
          Working...
          X