I finally found what was going wrong. I had lots of class library project with the same public key. These libraries should be introduced as friend assembly.
[assembly: InternalsVisibleTo("Friend1, PublicKey=00240000048000009...")]
[assembly: InternalsVisibleTo("Friend2, PublicKey=00240000048000009...")]
[assembly: InternalsVisibleTo("Friend3, PublicKey=00240000048000009...")]
[assembly: InternalsVisibleTo("Friend4, PublicKey=00240000048000009...")]
So I thought it's a kind of hard coding to repeat the public key every time and I make a const string
variable somewhere and use that in the attribute declaration. However in compile time the compiler was able to access it and build the project successfully but in the design time there was no idea how to resolve it.
//somewhere
const string key = "PublicKey=00240000048000009...";
//
And then I changed those lines like this:
[assembly: InternalsVisibleTo("Friend1, " + key)]
[assembly: InternalsVisibleTo("Friend2, " + key)]
[assembly: InternalsVisibleTo("Friend3, " + key)]
[assembly: InternalsVisibleTo("Friend4, " + key)]
So I changed these lines and used the hard code version and now IntelliSense and Syntax coloring are working.