Change Shader Property at runtime

Hello community. Have a object with “Toon/Basic Outline” Shader.

The properties of this shader is

Properties {
		_OutlineColor ("Outline Color", Color) = (0,0,0,1)
	}

And in my script I want to change the “Outline Color” property at runtime.

I have tried:

renderer.material.setColor("Outline Color", Color.red);

But I cannot get it to change.

[SOLVED]
Solution was to write _OutlineColor and not “Outling Color”.
I also discovered that I could not use my own Color ( example: new Color(1,1,1,1)), I had to use build in colors( example: Color.red)

First parameter is the name of the variable, not the label .

renderer.material.setColor("_OutlineColor", Color.red);

These days in Unity:

gameObject.GetComponent<Renderer>().sharedMaterial.SetFloat("_YourParameter", someValue);

renderer.material.setColor("_OutlineColor",new Vector4(a,b,c,d));

a,b,c,d will be red,green,blue and alpha values for your color.

These days in Unity:

gameObject.GetComponent<Renderer>().sharedMaterial.SetFloat("_YourParameter", someValue);